我在数据集中有一些数据,我通常会选择一条记录,如下所示。LINQ to Dataset不再识别“字段<string>”关键字
SnapshotDS.SnapshotRow[] previousRow =
m_PreviousSnapshot.Snapshot.Select(string.Format("TechKey = '{0}'", ChangeRow.TechKey))
as SnapshotDS.SnapshotRow[];
ChangeRow.Prev_Staff_No = previousRow[0].Staff_No;
为了做相同的LINQ,我希望做到以下几点,但我得到的场关键字下波浪线。
var pRow = from p in m_PreviousSnapshot.Snapshot.AsEnumerable()
where p.Field<string>("TechKey") == ChangeRow.TechKey
.Single()
select p;
ChangeRow.Prev_Staff_No = p.Staff_No;
我以前用过类似的LINQ很多次,从来没有这个问题。
有什么建议吗?
编辑
编译器的错误,我得到的是:
的操作数错误CS0019:运算符 '==' 不能应用于类型 '串' 和 '炭'
...但是“TechKey字段绝对是DataSet中的一个字符串”。
在LINQ查询中选择单词TechKey。按F12。它的类型是什么? – mjwills
如果我按下TechKey高亮显示的F12,我将显示一个密封的类String。 – TeamWild