在 DataTable C# 中比较和查找行值
Posted
技术标签:
【中文标题】在 DataTable C# 中比较和查找行值【英文标题】:Comparing and Finding row value in DataTable C# 【发布时间】:2020-12-05 07:18:31 【问题描述】:我有一个用数据库表(两列)id
和 class
填充的 DataTable。我想将class
列的值与 string 进行比较,并找到对应的id
值。 classID
应该是 int
类型。
我的代码:
int classID = from DataRow row in dtClassesDb.Rows where
row.ItemArray[1].ToString().Equals(table.TableName)
select row.ItemArray[0];
【问题讨论】:
如果您对高效查询感兴趣,可以考虑通过创建DataView
在DataTable
中创建索引。看看this的问题。
我已阅读链接问题。但就我而言,我该怎么做呢?
【参考方案1】:
通过将列class
的值与任何给定字符串进行比较,从DataTble
中找到Id
。
int classID = (int) dtClassesDb.AsEnumerable().
FirstOrDefault(x => x.Field<string>(1) == "YourStringToCompare").
ItemArray[0];
这里:
Field<string>(1)
正在使用列 class
索引,即 1
ItemArray[0]
正在使用列 Id
索引,即 0
这应该解决查询以获取Id
。
【讨论】:
以上是关于在 DataTable C# 中比较和查找行值的主要内容,如果未能解决你的问题,请参考以下文章
通过DataTable c#中的itemArray值查找DataRow