Reputation: 3142
I have a model which contains a User. Each user must have a Person record. A person record may or may not have an Address record.
When I fetch the currently logged in User's address I am currently using the following which to me seems incredibly messy. Is there a better way to do this?
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();
}
}
Thanks!
Upvotes: 1
Views: 1263
Reputation: 4264
You can use the null coalesce operator:
using (eziTraceEntities db = new eziTraceEntities())
{
return db.Users.Where(u => u.ID == Globals.UserID).FirstOrDefault().Person.Address ?? new Address();
}
Upvotes: 2