在LINQ to SQL中使用“Is NULL / not NULL”

时间:2012-02-29 11:30:38

标签: sql linq linq-to-sql

我想在LINQ to SQL中翻译此请求:

SELECT * from Agir where NouvelIncident='1' AND facturable is null

我的尝试:

 public static List<Agir> GetINDEFAgir()
 {
     DataClassesActilogDataContext db = ContextSingleton.GetDataContext();

     List<Agir> list;

     var v = from i in db.Agir
             where i.facturable is null && i.NouvelIncident == true
             select i;

     list = v.ToList();
     return list;

 }

看起来LINQ to SQL中不允许“is null”...我有一个错误。

提前感谢您的帮助

2 个答案:

答案 0 :(得分:13)

使用=='is'检查类型

public static List<Agir> GetINDEFAgir()
 {

 DataClassesActilogDataContext db = ContextSingleton.GetDataContext();

 List<Agir> list;

 var v = from i in db.Agir
         where i.facturable == null && i.NouvelIncident == true
         select i;

 list = v.ToList();
 return list;

 }

答案 1 :(得分:1)

这不起作用吗?

var v = from i in db.Agir
             where i.facturable == null && i.NouvelIncident == true
             select i;

Linq-to-SQL应该将其转换为正确的SQL。