+7 votos
72 visitas

O método Get de uma entidade especializada específica está retornando o tipo da entidade do núcleo.

Entidade de núcleo: public class Pessoa : BusinessEntity<Pessoa>

Entidade específica: public class PessoaXPTO : Pessoa

PessoaXPTO.Get() está retornando Pessoa.

Não deveria ser PessoaXPTO?

 

por (865 pontos) | 72 visitas

1 Resposta

+5 votos
Melhor resposta

Isto é uma limitação do C#/BEF.

Como o tipo de retorno dos métodos GetMany e Get é definido na classe núcleo (Pessoa : BusinessEntity<Pessoa>), esses métodos vão retornar sempre o tipo do núcleo.

Mas é só a assinatura, as instâncias serão do tipo específico, no caso PessoaXPTO.

A solução correta é utilizar o operador as:

PessoaXPTO pessoaEspecifica = PessoaXPTO.Get(1) as PessoaXPTO;

 

por (865 pontos)
selecionada por
Melhores Jul 2026
  1. RosemarieBur

    5 Pontos

  2. FKZEstelle7

    5 Pontos

  3. EthelSasse06

    5 Pontos

200 pontos
Melhores 2026 Jul 27 - Aug 02
  1. Larson

    165 Pontos

  2. danilo.pereira

    96 Pontos

  3. danilo.pereira

    96 Pontos

  4. danilo.pereira

    96 Pontos

  5. luciano.fronza

    61 Pontos

  6. luciano.fronza

    61 Pontos

  7. luciano.fronza

    61 Pontos

  8. diuari.molinari

    52 Pontos

  9. diuari.molinari

    51 Pontos

  10. diuari.molinari

    51 Pontos

518 perguntas
568 respostas
389 comentários
801 usuários