显示IEnumerable查询中的所有空字段

时间:2013-06-20 19:58:01

标签: c# .net linq ienumerable dbnull

我有以下(简单)表:

表:MyDataTable

**Color**
Blue
null
Red
Yellow
null
null
Green

此查询(例如):

query =
       from user in MyDataTable.AsEnumerable()
       where (user.Field<string>("Color") != null ? user.Field<string>("Color").Contains("") : false)
       select user;

显示所有非空的字段。

编辑:抱歉我的问题在标题中。我想进行查询以仅显示空字段。 怎么样? 此致!

2 个答案:

答案 0 :(得分:2)

删除where子句:

var query = from user in MyDataTable.AsEnumerable()
            select user;

或者简单地说:

var query = MyDataTable.AsEnumerable();

答案 1 :(得分:1)

  

我想查询显示所有字段(包括空字段)。

要显示所有内容,只需直接使用该表:

query = MyDataTable.AsEnumerable();

请注意,您可以使用String.IsNullOrEmpty来简化现有查询:

query =
   from user in MyDataTable.AsEnumerable()
   where !string.IsNullOrEmpty(user.Field<string>("Color"))
   select user;