【问题标题】:Select DataTable row, filtered by GUID选择按 GUID 过滤的 DataTable 行
【发布时间】:2010-12-01 22:34:20
【问题描述】:
我有一个带有 GUID(带有 DataType System.Guid)和 it appears 的非主键列,您不能在该列上使用 DataTable.Select。 (只有 DataRowCollection.Find 但它要求 GUID 是主键列,这不是我的情况)
无论如何,我需要得到那一行WHERE UniqueId = *GUID*
也许有一些 LINQ 技巧可以完成这项工作?
【问题讨论】:
标签:
c#
linq
datatable
filter
guid
【解决方案1】:
你可以试试这样的:
C#:
var filteredRows = from dtr in yourDataTable.Rows
where ((System.Guid)dtr["MyGuidColumn"]) == myFilterGuid
select dtr;
VB:
Dim filteredRows = From dtr In yourDataTable.Rows _
Where DirectCast(dtr("MyGuidColumn"), System.Guid) = myFilterGuid _
Select dtr