I have a models like this:
public class VMDetallePeriodoPAgo
{
public DetallePeriodoPagoViewModel Modelo1 { get; set; }
public PerspectivaRealViewModel Modelo2 { get; set; }
}
public class DetallePeriodoPagoViewModel
{
public int ID { get; set; }
public int IdRecibo { get; set; }
public string Descripcion { get; set; }
public int IdPeriodoPago { get; set; }
public string Empleado { get; set; }
public decimal Ingresos { get; set; }
public decimal MontoISR { get; set; }
}
public class PerspectivaRealViewModel
{
public decimal PersepcionesReales { get; set; }
}
And in controller I want to fill it as:
List<VMDetallePeriodoPAgo> LDPVM = new List<VMDetallePeriodoPAgo>();
foreach (var i in periodos)
{
VMDetallePeriodoPAgo DPVM = new VMDetallePeriodoPAgo();
DPVM.Modelo1.IdRecibo = i.IdRecibo;
DPVM.Modelo1.Empleado = i.Empleado.Codigo;
DPVM.Modelo1.Descripcion = i.Descripcion;
DPVM.Modelo1.MontoISR = i.MontoIRS;
LDPVM.Add(DPVM);
}
Problem is when I try to execute it, when trying to fill model in line:
DPVM.Modelo1.IdRecibo = i.IdRecibo;
I always getting:
Object reference not set to an instance of an object.
Why it happen, am I doing something wrong with my modeling? Regards