创建匿名类型(使用"新"而不指定类型时)时,必须为每个属性指定成员名称.从您的示例中,它看起来像这样:(也修复了您的连接)
var query = from a in db.tblActivities join i in db.tblIPs on a.ipid equals i.id join u in db.tblUsers on i.uid equals u.id select new { UserName = (u.UserName ?? i.Address), Request = a.Request, Date = a.DateTime };
您也可以按自己的方式使用UserName:
UserName = (u.UserName == null) ? i.Address : u.UserName,
但是?? ?? 运算符更简洁.它类似于SQL中的"isnull".
创建匿名类型(使用"新"而不指定类型时)时,必须为每个属性指定成员名称.从您的示例中,它看起来像这样:(也修复了您的连接)
var query = from a in db.tblActivities join i in db.tblIPs on a.ipid equals i.id join u in db.tblUsers on i.uid equals u.id select new { UserName = (u.UserName ?? i.Address), Request = a.Request, Date = a.DateTime };
您也可以按自己的方式使用UserName:
UserName = (u.UserName == null) ? i.Address : u.UserName,
但是?? ?? 运算符更简洁.它类似于SQL中的"isnull".