如何在 C# 中使用 LINQ 查询查找数据表的某些特定数据列中存在或不存在的字符串?
how to find a string which is exist or not in some specific datacolumns of the datatable using LINQ query in C#?
我正在尝试查找是否存在于数据表的某个指定列中的字符串。例如,DataTable 包含 5 个 DataColumns。我想找到存在于任何 DataColumn1 或 DataColumn2 中的字符串。
我尝试了下面的代码部分来获取单个 column1 值。
IEnumerable<string> query = from dr in dt.AsEnumerable()
select dr.Field<string>("ID");
如何获取 2 列或更多列的值?
您可以return匿名输入:
var query = from dr in dt.AsEnumerable()
select new {ID = dr.Field<string>("ID"), Column2 = dr.Field<string>("Column2")};
而且您可以使用该类型的字段:
var Column2 = query.First().Column2;
var ID = query.First().ID;
使用这个。
IEnumerable<string> query = from dr in dt.AsEnumerable()
where dr.Field<string>("ID").Contains("stringValue") || dr.Field<string>("DataColumn1").Contains("stringValue")
select new { Id = dr.Field<string>("ID"), DataColmn1 = dr.Field<string>("DataColumn1") };
尝试代码:
IEnumerable<string> query = (from dr in dt.AsEnumerable()
select dr.Field<string>("ID")+ dr.Field<string>("ID")).ToList();
另一个解决方案:
IEnumerable 对一种通用类型参数的支持不支持多种 Return 类型
新建一个Class
class customer
{
Public string Id {get;set;}
Public String Name {get;set;}
}
并用于 linq
IEnumerable<customer> query = (from dr in dt.AsEnumerable()
select new customer{ id= dr.Field<string>("ID"),name= dr.Field<string>("name")}).ToList();
我正在尝试查找是否存在于数据表的某个指定列中的字符串。例如,DataTable 包含 5 个 DataColumns。我想找到存在于任何 DataColumn1 或 DataColumn2 中的字符串。 我尝试了下面的代码部分来获取单个 column1 值。
IEnumerable<string> query = from dr in dt.AsEnumerable()
select dr.Field<string>("ID");
如何获取 2 列或更多列的值?
您可以return匿名输入:
var query = from dr in dt.AsEnumerable()
select new {ID = dr.Field<string>("ID"), Column2 = dr.Field<string>("Column2")};
而且您可以使用该类型的字段:
var Column2 = query.First().Column2;
var ID = query.First().ID;
使用这个。
IEnumerable<string> query = from dr in dt.AsEnumerable()
where dr.Field<string>("ID").Contains("stringValue") || dr.Field<string>("DataColumn1").Contains("stringValue")
select new { Id = dr.Field<string>("ID"), DataColmn1 = dr.Field<string>("DataColumn1") };
尝试代码:
IEnumerable<string> query = (from dr in dt.AsEnumerable()
select dr.Field<string>("ID")+ dr.Field<string>("ID")).ToList();
另一个解决方案:
IEnumerable 对一种通用类型参数的支持不支持多种 Return 类型
新建一个Class
class customer
{
Public string Id {get;set;}
Public String Name {get;set;}
}
并用于 linq
IEnumerable<customer> query = (from dr in dt.AsEnumerable()
select new customer{ id= dr.Field<string>("ID"),name= dr.Field<string>("name")}).ToList();