什么是Linq的DateTime的FirstOrDefault?

Kel*_*tex 17 c# linq

如果我有一个返回a的查询DateTime,那么它的值是FirstOrDefault()多少?是否有通用的方法来获取C#标量的默认值?例:

var list = (from item in db.Items 
    where item.ID==1234
    select item.StartDate).FirstOrDefault();
Run Code Online (Sandbox Code Playgroud)

编辑:假设列StartDate不能为空.

Ken*_*art 42

获取给定泛型类型的默认值的一般方法是:

default(T)
Run Code Online (Sandbox Code Playgroud)

哪个T是有问题的泛型类型参数.对于参考类型,这将产生null.对于值类型,这将产生值为零的实例.对于DateTimes,这相当于DateTime.MinValue.

  • 作为旁注,您可以使用以下命令"强制"使用不同的默认值:`collection.DefaultIfEmpty(new DateTime(...)).First();` (6认同)

Par*_*ury 5

DateTime.MinValue