1

我正在使用以下两个 LINQ 查询:

查询 1

var membersAddresses = 
  (from o in db.MembersAddresses.Include(m => m.Member)
               .Where(id => id.MemberID == memberID)
   select new { 
       memberID = memberID, 
       Address = o.AddressName + ":" + o.Address1 
   }).ToList();

查询 2

var membersAddresses1 = 
    (from o in db.MembersAddresses.Include(m => m.Member)
                 .Where(id => id.MemberID == memberID) 
     select o).ToList();

一个成员有 2 个地址。下面的查询返回正确的结果,而上面的第一个查询将第二个值显示为空。知道如何更正该查询吗?我想使用第一个查询,因为我需要使用一些自定义列。

谢谢

4

1 回答 1

0

您可以使用运算符??

Address = (o.AddressName ?? "")  + ":" + (o.Address1 ?? "")

一个 '??' B 表示,如果 A 为空,则取 B,否则取 A

于 2013-07-30T21:31:32.523 回答