gpt4 book ai didi

C# 数据表计算索引而不是名称?

转载 作者:太空宇宙 更新时间:2023-11-03 11:39:06 25 4
gpt4 key购买 nike

我在 ASP.NET/C# 中使用数据表,想使用 Compute 方法对每一列求和,有没有一种方法可以根据列索引而不是列名来执行此操作,这样我就可以将它放在for 循环沿线:

for (int i = 0; i < dt.Columns.Count; i++)
{
GridView1.FooterRow.Cells[i].Text = dt.Compute("SUM(i)", "").ToString();
}

这对我的应用程序并不过分重要,因为我将在其他地方使用列名数组,因此我可以使用该数组来构造具有该名称的 SUM。

最佳答案

它看起来不像 DataTable.Compute 使用的表达式支持按索引引用列。事实上,DataColumn.Expression property 的 MSDN 文档强调列名的使用:

When you create an expression, use the ColumnName property to refer to columns.

您可以使用 ColumnName property在循环中引用当前列的名称,如 @paolo在对您的问题的评论中建议。这看起来像:

for (int i = 0; i < dt.Columns.Count; i++)
{
string expression = "SUM(" + dt.Columns[i].ColumnName + ")";
GridView1.FooterRow.Cells[i].Text = dt.Compute(expression, "").ToString();
}

关于C# 数据表计算索引而不是名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5262320/

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