使用LINQ和Entity Framework使用可能为空的字段选择NEW

Kje*_*sen 5 c# linq

我想快速选择一些行,为dropdownlist/selectlist或类似的东西很好地格式化 - 但我在db中有一个字段,可以为空(DateOfBirth).

var athletes = (from at in _db.Athletes
           select new{
                  Name = at.Name + " " + at.DateOfBirth, 
                  Id = at.AthleteId 
                  }).ToList();
Run Code Online (Sandbox Code Playgroud)

在这种情况下,有没有办法在LINQ中处理可空类型?

编辑:

我没注意这个事实,因为这是使用实体框架,除非他们有SQL翻译,否则不能使用与标准LINQ一起使用的方法.

  • DateOfBirth是一个Nullable <DateTime>
  • 来源是实体框架4

Sha*_*rde 7

您可以使用null coalesce运算符,请参阅LINQ中SQL ISNULL的等效性?.

就像是:

var athletes = (from at in _db.Athletes
           select new{
                  Name = at.Name + " " + (at.DateOfBirth ?? ""), 
                  Id = at.AthleteId 
                  }).ToList();
Run Code Online (Sandbox Code Playgroud)