Usuário com melhor resposta
Erro em Entityframework

Pergunta
-
Respostas
-
Criei um outro dbcontext e fiz a edição normal. Deu certo.
- Marcado como Resposta Luiz Lopes Ziul quarta-feira, 11 de maio de 2016 13:07
Todas as Respostas
-
-
Eu declaro em um foreach e passo como parâmetro no update.
var listaParticipe = programaEntity.site_Participe.ToList();
foreach (var participeEntity in listaParticipe)
{
participeEntity.ProgramaId = null;
repositoryParticipe.Update(participeEntity);
} -
Seu repositoryParticipe e o programaEntity parecem ser contextos diferentes e se forem é este o causador do erro.
Você poderia modificar seu Repositório para receber vários itens e aplicar o SaveChanges no final, por exemplo.
Dá uma olhada nestes exemplos para tirar algumas ideias e aprimorar seu repositório:
http://www.linhadecodigo.com.br/artigo/3370/entity-framework-4-repositorio-generico.aspx
https://msdn.microsoft.com/pt-br/library/dn630213.aspx?f=255&MSPPError=-2147217396
http://www.asp.net/mvc/overview/older-versions/getting-started-with-ef-5-using-mvc-4/implementing-the-repository-and-unit-of-work-patterns-in-an-asp-net-mvc-application
-
-
-
-
-
Você poderia responder as perguntas que foram feitas? As perguntas nos ajudam a entender o seu problema e sem entender o seu problema fica mais difícil ajudar. Na última postagem fiz 4 perguntas e você respondeu apenas "sim".
Poderia postar o código do seu repositório?
Passei 3 links com artigos que mostram modelos de repositório para você utilizar como inspiração. Não quero que você bote o seu Repositório no lixo e adote um dos que enviei. Repositório, dependendo como é feito, pode gerar dor de cabeça e mudar ele depois do projeto estar quase acabando é complicado.
Uma pergunta para reflexão... qual é o objetivo do seu repositório?
-
-
Luiz, boa noite.
to desconfiado que tem algum erro de estrutura no seu repositório generico !!!!!! vc deve estar retornando uma instância de um context sem dar um Dispose .... ou deixando de fazer um Detach na instância retornada pelo método.... ai ele entendi q vc tem varias instancias para um unico objeto
Att, Diego de Almeida Barreto
Diego Almeida Barreto
System Analyst / Software Developer
-
Faz assim:
var listaParticipe = programaEntity.site_Participe.ToList(); foreach (var participeEntity in listaParticipe) { participeEntity.ProgramaId = null; } programaEntity.SaveChanges(); Porque? Seria o ideal seu repositorio da lista ter um comando para salvar dados já anexados ao seu contexto
Fulvio C
-
Criei um outro dbcontext e fiz a edição normal. Deu certo.
- Marcado como Resposta Luiz Lopes Ziul quarta-feira, 11 de maio de 2016 13:07