我有一个包含用户的模型。每个用户必须拥有一个Person记录。个人记录可能有也可能没有地址记录。
当我获取当前登录的用户地址时,我正在使用以下内容,这对我来说似乎非常混乱。有更好的方法吗?
public Address GetAddress()
{
using (eziTraceEntities db = new eziTraceEntities())
{
if (db.Users.Where(u => u.ID == Globals.UserID).FirstOrDefault().Person.Address != null)
return db.Users.Where(u => u.ID == Globals.UserID).FirstOrDefault().Person.Address;
else
return new Address();
}
}
谢谢!
答案 0 :(得分:2)
您可以使用null coalesce operator:
using (eziTraceEntities db = new eziTraceEntities())
{
return db.Users.Where(u => u.ID == Globals.UserID).FirstOrDefault().Person.Address ?? new Address();
}