none
Exibição de Atributos em Herança Code First RRS feed

  • Pergunta

  • Prezados, boa tarde!

    Preciso exibir na view uma lista de Pessoas, porém essa lista tem que conter uma coluna de CPF e CNPJ. Eu fiz uma herança da classe Pessoa, Pessoa Física e Jurídica. Pela view preciso olhar essas 2 classes trazendo seus atributos. Estou usando CodeFirst, fiz o relacionamento TPT. Porém estou com dificuldade de exibir na tela esses 2 campos. A minha view ta puxando a Model Pessoa.

       public class Pessoa
        {
            [Key]
            public int id_pessoa { get; set; }
    
            public string nome { get; set; }
    }

    public class PessoaJuridica : Pessoa { public string cnpj { get; set; } }

        public class PessoaFisica : Pessoa
        {
            public string cpf { get; set; }
        }

    A minha view tem a @model Pessoa.

    Obrigado



    sexta-feira, 15 de abril de 2016 16:26

Respostas

  • Cara,

    Consegui. Precisava colocar a classe Pessoa como abstrata. E configurar o AutoMapper...

    Mais fiz o seguinte na View

          @{
                            string tipo = "";
                            
                            if (item is PessoaJuridicaViewModel)
                            {
                                tipo = ((PessoaJuridicaViewModel) item).cnpj;
                                
                            }  else if (item is PessoaFisicaViewModel)
                            {
                                tipo = ((PessoaFisicaViewModel) item).cpf;
                            }
    }

    Agora vou ajustar o código.

    Obrigado pela ajuda!


    • Marcado como Resposta Thauan Ricardo sexta-feira, 15 de abril de 2016 19:35
    sexta-feira, 15 de abril de 2016 19:29

Todas as Respostas

  • Boa tarde,

    Verifica se te ajuda....

    https://social.msdn.microsoft.com/Forums/pt-BR/9d488bc6-03c3-4da7-828a-67b059d8e2ef/como-trabalhar-com-herana-de-pessoa-pessoa-fsica-e-pessoa-jurdica-no-mvc-4?forum=mvcpt

    Att,


    Se a resposta contribuiu com seu aprendizado por favor marque como util, se solucionou seu problema marque como resposta.

    sexta-feira, 15 de abril de 2016 17:20
  • Silvaney,

    Ainda estou com dificuldades. Porque eu preciso exibir o dados do CPF e CNPJ. Como que eu faço pra exibir esse dado na View?

    sexta-feira, 15 de abril de 2016 17:37
  • Cara,

    Consegui. Precisava colocar a classe Pessoa como abstrata. E configurar o AutoMapper...

    Mais fiz o seguinte na View

          @{
                            string tipo = "";
                            
                            if (item is PessoaJuridicaViewModel)
                            {
                                tipo = ((PessoaJuridicaViewModel) item).cnpj;
                                
                            }  else if (item is PessoaFisicaViewModel)
                            {
                                tipo = ((PessoaFisicaViewModel) item).cpf;
                            }
    }

    Agora vou ajustar o código.

    Obrigado pela ajuda!


    • Marcado como Resposta Thauan Ricardo sexta-feira, 15 de abril de 2016 19:35
    sexta-feira, 15 de abril de 2016 19:29
  • Estava terminando de montar um exemplo para te mandar. Que bom que conseguiu.

    Att,

    Se a resposta contribuiu com seu aprendizado por favor marque como util, se solucionou seu problema marque como resposta.

    sexta-feira, 15 de abril de 2016 19:30
  • Silvaney,

    Se voce quiser finalizar e publicar a sua solução. Seria interessante pra quem tem dúvidas...

    Obrigado.

    sexta-feira, 15 de abril de 2016 19:35