我有一个DataTable我试图做一个包含值的简单选择行。
我的代码
var LoginDetails = from myRow in DTOperators.AsEnumerable()
where myRow.Field<string>(0) == UserName
select myRow;
我正在尝试检查字符串UserName是否存在于数据表
中的行的位置0当我运行此查询时,我得到一个空白的数据行。
我试图在我想要选择的位置周围使用[]。
任何人都能看到我做错了什么。答案 0 :(得分:20)
您必须检查是否与正确的列进行比较并检查表格中的数据。这项工作很好:
var DTOperators = new DataTable();
var UserName = "test";
DTOperators.Columns.Add("UserName", typeof(string));
DTOperators.Rows.Add("test1");
DTOperators.Rows.Add("test");
var LoginDetails = from myRow in DTOperators.AsEnumerable()
where myRow.Field<string>(0) == UserName
select myRow;
我有一个数据阵列的Enumerable。 您还可以尝试按columnName获取数据:
var LoginDetails = DTOperators.Rows
.Cast<DataRow>()
.Where(x => x["UserName"] == UserName).ToList();