Linq to Entities,在没有数据时获取Max日期

时间:2011-10-03 17:44:34

标签: linq-to-entities entity-framework-4.1

这是我的陈述:

startDate = (from n in db.Nodes 
where n.SeedID == mySeedID select n.CreatedDate).Max<DateTime>();

当存在SeedID的数据时,它可以正常工作。但是,有时候种子是新的,所以没有节点。该语句导致InvalidOperationException。我可以在try / catch中包装它。有没有更好的方法来处理这种情况?

1 个答案:

答案 0 :(得分:3)

也许使用可以为空的DateTime?

startDate = (from n in db.Nodes 
             where n.SeedID == mySeedID 
             select (DateTime?)n.CreatedDate).Max<DateTime?>();