我有一个DataTable,我正在尝试做一个包含值的简单选择行。

我的密码

  var LoginDetails = from myRow in DTOperators.AsEnumerable()
                           where myRow.Field<string>(0) == UserName
                           select myRow;

我正在尝试检查字符串UserName是否存在于数据表中行0的位置

当我运行此查询时,我得到一个空白的数据行。

我尝试在要选择的位置周围使用[]。

任何人都可以看到我在做什么错。

最佳答案

您必须检查是否与右列进行比较,并检查表中的数据。这项工作很好:

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;

我有一个数据行可枚举。
您也可以尝试通过columnName获取数据:
var LoginDetails = DTOperators.Rows
                              .Cast<DataRow>()
                              .Where(x => x["UserName"] == UserName).ToList();

10-04 10:35
查看更多