none
Como definir propriedades de relacionamento no Entity Framework Code Frist? RRS feed

  • Pergunta

  • Ola, estou iniciando no Entity Framework e tenho dúvida da maneira correta de criar um relacionamento entre tabelas. Segue as classes:

    Public class Cliente
    {
    public int ClienteId {get;set;}
    public string Nome {get;set;}
    
    public virtual List<PedidoCabecalho> ListaPedidos {get;set}
    }
    
    Public class PedidoCabecalho
    {
    public int PedidoId {get;set;}
    public date DataPedido {get;set;}
    public int ClienteId {get;set;}
    
    public virtual Cliente cliente {get;set;}
    
    }
    

    A dúvida é se a propriedade ClienteId da classe PedidoCabecalho é necessário ou se somente propriedade virtual :

    public virtual Cliente cliente {get;set;}

    resolve a questão do relacionamento.

    Grato a todos


    Programe o mundo para uma vida melhor!

    quarta-feira, 17 de fevereiro de 2016 01:46

Respostas

  • Olá Sebastião! Bom dia!

    Bacana que está iniciando no EF, ele é muito bom de trabalhar...

    No seu caso não precisa definir o ClientId na classe Pedido Cabecalho, pois indiretamente está fazendo isso quando declara o virtual Cliente como propriedade, e o EF irá aplicar o relacionamento com sucesso no banco de dados.

    Olha esse tutorial que irá te ajudar:

    Simple Code First Example

    Abraço!

    • Marcado como Resposta Marcos SJ quarta-feira, 17 de fevereiro de 2016 12:08
    quarta-feira, 17 de fevereiro de 2016 10:38

Todas as Respostas

  • Olá Sebastião! Bom dia!

    Bacana que está iniciando no EF, ele é muito bom de trabalhar...

    No seu caso não precisa definir o ClientId na classe Pedido Cabecalho, pois indiretamente está fazendo isso quando declara o virtual Cliente como propriedade, e o EF irá aplicar o relacionamento com sucesso no banco de dados.

    Olha esse tutorial que irá te ajudar:

    Simple Code First Example

    Abraço!

    • Marcado como Resposta Marcos SJ quarta-feira, 17 de fevereiro de 2016 12:08
    quarta-feira, 17 de fevereiro de 2016 10:38
  • Olá Sebastião! Bom dia!

    Bacana que está iniciando no EF, ele é muito bom de trabalhar...

    No seu caso não precisa definir o ClientId na classe Pedido Cabecalho, pois indiretamente está fazendo isso quando declara o virtual Cliente como propriedade, e o EF irá aplicar o relacionamento com sucesso no banco de dados.

    Olha esse tutorial que irá te ajudar:

    Simple Code First Example

    Abraço!

    Grato pela atencao. Essa dúvida surgiu porque vi um exemplo que criava a propriedade (fisica) e a virtual. Vou dar uma lida no artido. Mais uma vez, grato.

    Programe o mundo para uma vida melhor!

    quarta-feira, 17 de fevereiro de 2016 18:33