I do not understand the reason for receiving a NullReferenceException
, in this beautiful code:
pessoaJuridica.InscricaoEstadual = viewmodel.PessoaJuridica.InscricaoEstadual;
What am I doing wrong?
Follow whole code
public async Task<ActionResult> Create(ClienteViewModel viewmodel)
{
// verifica se o Model CLIENTEVIEWMODEL está válido
if (ModelState.IsValid)
{
Pessoa p;
//verifica o tipo de pessoa para add no entity
if (viewmodel.TipoPessoa.Equals(Models.Enum.TipoPessoa.Juridica))
{
//cria a pessoa juridica
p = new PessoaJuridica();
// atribui a pessoa da viewmodel para o objeto pessoa
p = viewmodel.Pessoa;
var pessoaJuridica = p as PessoaJuridica;
pessoaJuridica.InscricaoEstadual = viewmodel.PessoaJuridica.InscricaoEstadual;
db.PessoaJuridica.Add(pessoaJuridica);
}
EDIT
full error message:
Exception Details: System.NullReferenceException: object not set to an instance of an object.
Class PersonJuridica :
public class PessoaJuridica : Pessoa
{
[DisplayName("Inscrição Estadual")]
[StringLength(20)]
public String InscricaoEstadual { get; set; }
}
ViewModel :
public class ClienteViewModel
{
public Pessoa Pessoa { get; set; }
public TipoPessoa TipoPessoa { get; set; }
public PessoaJuridicaViewModels PessoaJuridica { get; set; }
}