using SubSonic3 SimpleRepository;
我有一个用于电子邮件队列的表,它有一个允许空值的SentOn DATETIME列。使用以下Lambda表达式产生了我的错误,有没有人有任何想法如何从列表中选择列表是否为空。
IList<Email> emails = _repo.Find<Email>(x => x.SentOn == null);
IList<Email> emails = _repo.Find<Email>(x => !x.SentOn.HasValue);
IList<Email> emails = _repo.Find<Email>(x => x.SentOn.Value.Equals(null));
当然有一种简单的方法可以达到这个目的,而不是像边缘情况那样。我认为我有限的lambda / linq知识是这里的问题。
答案 0 :(得分:0)
在不知道您遇到的错误的情况下,我猜这是因为您正在编写要由C#执行的LINQ代码,但是您将它传递给SubSonic以将其转换为SQL。
解决方案is in this question基本上涉及查询SQL db以获取所有结果,然后在C#中使用LINQ查询。
或者你应该能够做一个类似于SubSonic 2.0的(伪代码).Where(fieldName).IsNull