Acceso a las propiedades de navegación desde IdentityUser cuando LazyLoading está desactivado
Tengo esta configuración con el primer modelo de código:
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;}
}
Extendí el IdentityUser para que contenga una instancia de la clase "Cliente".
Ahora 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.
}
dado que la carga diferida está desactivada, user.Customer es nulo y, por lo tanto, proporciona una excepción de referencia nula. Me alegraría si alguien me puede ayudar a acceder a las propiedades de navegación de IdentityUser cuando LazyLoading está desactivado.
Gracias.