none
Entity FrameWork 4 Erro ao tentar Adicionar Registro em entidade que contem relacionamento RRS feed

  • Pergunta

  • Invalid relationship fixup detected in the navigation property 'Contatos' of the entity of the type 'Usuario'.

    Esse é o erro quando tento adicionar um registro com seguinte sintaxe

    var contato = new Contato();
    var user = dc.Usuarios.SingleOrDefault(c => c.usuarioId == 10);
    contato.nome = "Marco Souza";
    contato.email = "marco@webtera.com.br";
    contato.dataNasc = DateTime.Now;
    contato.Usuario = user;
    dc.AddObject("Contatos", contato);
    dc.SaveChanges();

    Mas quando tentar adicionar um contato dessa maneira funciona

    var contato = new Contato();
    var user = dc.Usuarios.SingleOrDefault(c => c.usuarioId == 10);
    user.Contatos.Add(new Contato { nome = "Marco Souza", email = "marco@webtera.com.br", dataNasc = DateTime.Now, Usuario = user });

    Alguem sabe se tem como eu utilizar da primeira forma
    programação e banco de dados
    domingo, 23 de agosto de 2009 02:02

Respostas

  • Verifique como esta configurada a relação entre Contatos e Usuarios no Entity Model

    Outra coisa, sugiro que use a segunda forma, pois fica mais facil para mostrar os contatos de um usuaria, se fizer da outra forma você tem que fazer um refresh no usuario, para que a coleção de contatos seja repopulada.


    abraço
    Binding you through life - Se serve, marque!!!
    • Marcado como Resposta Marco Souza quarta-feira, 26 de agosto de 2009 02:17
    segunda-feira, 24 de agosto de 2009 21:56
    Moderador

Todas as Respostas

  • Verifique como esta configurada a relação entre Contatos e Usuarios no Entity Model

    Outra coisa, sugiro que use a segunda forma, pois fica mais facil para mostrar os contatos de um usuaria, se fizer da outra forma você tem que fazer um refresh no usuario, para que a coleção de contatos seja repopulada.


    abraço
    Binding you through life - Se serve, marque!!!
    • Marcado como Resposta Marco Souza quarta-feira, 26 de agosto de 2009 02:17
    segunda-feira, 24 de agosto de 2009 21:56
    Moderador
  • O erro descobri que acontece porque estou usando IList na propriedade virtual e quando tentava adicionar o ef não reconhecia.
    Da segunda maneira preciso criar todas a regras nos objetos POCOs. Tava lendo no forum de ADO.NET Entity Framework and LINQ to Entities vai ter modificações nessa parte de associações .

    programação e banco de dados
    terça-feira, 25 de agosto de 2009 22:37