2011-05-24 43 views
1

Hy guys!如何返回空IEnumerable?

我的应用程序正在做这样的查询:

 public Order GetOrderByPerson(Order order, Person person) 
     { 
      return Repository.All() 
       .Where(x => x.Order == order) 
       .Where(y => y.envolvedPerson == person) 
       .Single(); 
     }; 

当不存在元素,它返回一个错误:

Sequence contains no elements

即可返回null,我怎样才能防止这种情况错误?

Tks。

回答

3

return Repository.All() 
       .Where(x => x.Order == order) 
       .Where(y => y.envolvedPerson == person) 
       .SingleOrDefault(); 

,检查其在调用方法空

2

您可以检查!Respository.Any()检查可枚举Null或Count是否为零。