gpt4 book ai didi

c# - 将 MySQL 数据读入循环

转载 作者:行者123 更新时间:2023-11-29 22:47:44 25 4
gpt4 key购买 nike

目前,我从数据库中提取所需信息并将其存储为数组的方法是可行的,但由于我单独写出来,所以相当乏味。

有没有一种方法可以让我从所需的列中读取所有信息并递增它直到到达末尾? (我想象一个for循环)

所以我连接到我的数据库并选择我需要的信息:

            One = Convert.ToInt32(dTable.Rows[0]["Day"].ToString());
Two = Convert.ToInt32(dTable.Rows[1]["Day"].ToString());
Cost1 = Convert.ToInt32(dTable.Rows[0]["Cost"].ToString());
Cost2 = Convert.ToInt32(dTable.Rows[1]["Cost"].ToString());

然后我将数据存储为整数:

Total1 = Cost1 + Cost2;
Total2 = One + Two;
Overall = Total1 - Total2;

结果有效,但我觉得好像可以通过 for 循环来改进它,从而减少很多艰苦的工作我尝试使用 for 循环,但它只取出最后一个结果

for (int i = 0; i < dTable.Rows.Count; i++)
{
int Day = Convert.ToInt32(dTable.Rows[i]["Day"]);
lblTest.Text = Day.ToString();
}

最后的结果是 8000,合计结果应该是 30,000 左右,但它只取最后的结果,而不是将每个结果相加。

最佳答案

最后一行代码在每次迭代中都会覆盖 lblTest.Text,因此您只能获得最后一个值。

您可以使用 LINQ 解决该问题并大大缩短时间。您必须根据列的类型进行相应调整:

var rows = dt.Rows.Cast<DataRow>();

var total1 = rows.Select(x => x.Field<decimal>("Cost")).Sum();
var total2 = rows.Select(x => x.Field<int>("Day")).Sum();

关于c# - 将 MySQL 数据读入循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29022707/

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