如何在不使用循环的情况下从dataset表中检索特定列。VS 2005 c#
如何在不使用循环的情况下,从具有x个列的dataset表中检索具有值的特定列?如何在不使用循环的情况下从dataset表中检索特定列。VS 2005 c#,c#,visual-studio,C#,Visual Studio,如何在不使用循环的情况下,从具有x个列的dataset表中检索具有值的特定列? 有什么帮助吗?dataset.tables[i].Columns[j]其中i是表索引器,j是列索引器 或者对于一个特定的ros和列数据集.tables[i].Rows[r][j]其中r是行索引我本想把它作为注释放进去,但从注释到ZombieSheep的答案,结果有点太长了: @Dee,你不能写一个循环来捕获值有什么特别的原因吗 只是为了性能的缘故迪伊 您是否测量了它,并确认在行上循环是您的性能瓶颈?当心过早地进行优化
有什么帮助吗?
dataset.tables[i].Columns[j]
其中i是表索引器,j是列索引器
或者对于一个特定的ros和列
数据集.tables[i].Rows[r][j]
其中r是行索引我本想把它作为注释放进去,但从注释到ZombieSheep的答案,结果有点太长了:
@Dee,你不能写一个循环来捕获值有什么特别的原因吗 只是为了性能的缘故迪伊 您是否测量了它,并确认在行上循环是您的性能瓶颈?当心过早地进行优化,这可能会让事情变得更慢
别忘了,编译器编写者比我聪明,可能也比你聪明,不管你最终做什么,最终都可能被编译成同一个MSIL。机会是任何“魔法”您可能要使用的方法可能是在后台使用循环来完成工作,因此您也可以实现一个简单的解决方案,使用循环提取一列的数据。这个扩展方法怎么样?(但不要问我性能;-))
我尝试了上面的解决方案1)只返回没有值的列名。解决方案2)我需要所有行values@Dee,是否有特定原因使您无法编写循环来捕获值?
public static DataTable GetOneColumn(this DataTable dataTable, string columnName)
{
DataView view = new DataView(dataTable);
return view.ToTable(false, columnName);
}