gpt4 book ai didi

c# - foreach 循环不会遍历列表中的所有项目 - C#

转载 作者:行者123 更新时间:2023-11-30 14:20:18 31 4
gpt4 key购买 nike

我有一个基本的 foreach 循环,它调用一个静态方法,该方法与数据库建立连接并插入一些数据。出于某种原因,当我在不调试的情况下运行应用程序时,它只会遍历集合中的第一项。如果我调试应用程序并在 foreach 循环上设置断点,它将遍历集合中的所有项目。

如果我设置一个断点并跨过 foreach 循环,它会演示相同的行为,就像我在没有调试的情况下运行应用程序一样。

有谁知道什么会导致这种行为?

这是源代码的简化版本:

List<MyObject> objectlist = new List<MyObject>();

//some code to populate list

foreach(MyObject myobject in objectlist)
{
string a = "a";
string b = "b";

MyLibrary.UpdateDatabase(a, b);
}

(我使用的是 Visual Studio 2008 SP1)

更新

无论是否调试应用程序,该过程都不会抛出任何异常。

最佳答案

我的猜测是,如果您给它更多时间单步执行每一行,您的代码可能会有不同的行为。 (估计是数据库的原因)

确保该方法没有抛出任何异常(放置一个调用 Console.WriteLineMessageBox.Show 的 catch block ,看看是否有任何事情发生)。

查看数据库日志,看看那里是否有任何有趣的内容。

此外,请发布该方法的完整源代码。

关于c# - foreach 循环不会遍历列表中的所有项目 - C#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1462250/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com