Acessando propriedades de navegação do IdentityUser quando LazyLoading está desativado
Eu tenho essa configuração com o código primeiro modelo:
public class TestContext :IdentityDbContext<TestUser>
{
public TestContext()
: base("TestConnection")
{
this.Configuration.LazyLoadingEnabled = false;
}
public DbSet<Customer> Customers{get;set;}
}
public class TestUser : IdentityUser
{
public virtual Customer Customer { get; set; }
}
public class Customer
{
public int Id { get; set; }
public string FirstName { get; set; }
public string LastName {get; set;}
}
Estendi o IdentityUser para conter uma instância da classe "Customer".
Agora considere este código:
var user = UserManager.FindById("some id");
if (user != null)
{
string str=user.Customer.FirstName; //since lazy loading is off, user.Customer is null and hence gives null reference exception.
}
como o carregamento lento está desativado, user.Customer é nulo e, portanto, fornece exceção de referência nula. Ficarei feliz se alguém puder me ajudar a acessar as Propriedades de navegação do IdentityUser quando o LazyLoading estiver desativado.
Obrigado.