Como você faz submitanger apenas enviar uma alteração específica e nem todas as alterações anteriores?

StackOverflow https://stackoverflow.com/questions/2174068

Pergunta

O método ASP.NET LINQ Submitchanges comete alterações para todas as modificações anteriores do banco de dados desde a última vez que foi chamado.

Eu tenho um caso em que faço algo como o seguinte:

ClassX x = new Abc.Linq.ClassX();
DataContext.InsertOnSubmit(x);

ClassY y = new Abc.Linq.ClassXY();
DataContext.InsertOnSubmit(y);

DataContext.SubmitChanges();//x and y are committed to the database

Eu gostaria de inserir y, mas não x na linha acima. Então eu gostaria de inserir X com outra chamada para submitchanges () algum tempo depois. Eu tenho que executar o código no pedido mostrado.

Isso é possível? Ou devo estar chamando algo além de submitchanges ()?

Foi útil?

Solução

Eu usaria o DataContexts separados para isso. O DataContext é simplesmente um invólucro para acesso a dados e um conjunto de alterações pendentes. Não suporta compromissos parciais de seu Changelist. InsertonsubMit faz o que diz que faz - há uma razão pela qual você precisa chamar isso antes de realmente querer que ele seja enviado? Talvez se você elaborasse o problema que está prendendo -o nessa ordem de execução, poderíamos fornecer uma solução melhor.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top