none
Erro Linq to Entities RRS feed

  • Pergunta

  • Estou recebendo o seguinte erro: "Referência de objeto não definida para uma instância de um objeto."

    Segue o código:

          Dim Contrato = From c In SGIEntidades.tbAlugueis _
                                 Where c.tbContratos.Codigo = CodContrato

          lblInquilino.Text = Contrato.ToList(0).tbContratos.tbInquilinos.Nome

    Porque esse erro aparece?

    Elton de Lima Ribeiro
    • Movido Fernanda Simões sexta-feira, 18 de dezembro de 2009 11:51 Movendo para um forum expecifico (De:VB.NET e Visual Basic)
    quarta-feira, 16 de dezembro de 2009 17:11

Respostas

  • Olá Elton,

    Altere sua consulta para fazer o 'Include' dos objetos referenciados, pois o EF não faz isso automaticamente.

    Faça assim:

          Dim Contrato = From c In SGIEntidades.tbAlugueis.Include("tbContratos") _
                                 Where c.tbContratos.Codigo = CodContrato

    Creio que assim o problema deve ser resolvido.

    Até mais!
    sábado, 19 de dezembro de 2009 15:09

Todas as Respostas

  • O mesmo erro do post anterior.

    Crie uma instância.

    Att. Alan.
    Se esta resposta solucionou sua dúvida, “Marque como Resposta”
    quarta-feira, 16 de dezembro de 2009 17:45
  • E como seria para criar uma instancia, pois se eu fizer isso:

          Dim Imoveis = From i In SGIEntidades.tbImoveis.ToList
          Dim Inquilinos = From i In SGIEntidades.tbInquilinos.ToList

    não da erro...

    Elton de Lima Ribeiro
    quarta-feira, 16 de dezembro de 2009 18:04
  • Olá Elton, me desculpe.

    Tente utilizar a instrução:

    lblInquilino.Text = Contrato(0).Nome
    Se esta resposta solucionou sua dúvida, “Marque como Resposta”
    quarta-feira, 16 de dezembro de 2009 18:24
  • Não dá.

    Dessa forma Nome não aparece no intelisense, pois nome é um membro de tbContratos, teria que fazer como mostrei acima, mas ai gera o erro.

    Elton de Lima Ribeiro
    quarta-feira, 16 de dezembro de 2009 18:28
  • E Assim?

    lblInquilino.Text = Contrato(0).tbContratos.tbInquilinos.Nome
    Se esta resposta solucionou sua dúvida, “Marque como Resposta”
    quarta-feira, 16 de dezembro de 2009 18:36
  • Ainda não deu certo?
    Se esta resposta solucionou sua dúvida, “Marque como Resposta”
    quarta-feira, 16 de dezembro de 2009 19:12
  • Essa é a forma que retorna erro.

    Elton de Lima Ribeiro
    quinta-feira, 17 de dezembro de 2009 10:57
  • Olá Elton,

    Altere sua consulta para fazer o 'Include' dos objetos referenciados, pois o EF não faz isso automaticamente.

    Faça assim:

          Dim Contrato = From c In SGIEntidades.tbAlugueis.Include("tbContratos") _
                                 Where c.tbContratos.Codigo = CodContrato

    Creio que assim o problema deve ser resolvido.

    Até mais!
    sábado, 19 de dezembro de 2009 15:09