ADO.NET - Obtendo os valores atuais do banco
O ADO.NET sempre teve recursos ótimos para tratar a concorrência de dados, evitando acidentes. Quando identifica a concorrência gera uma mensagem de erro que pode ser tratada.
Porém não havia um recurso específico para, depois da mensagem de erro, comparar as versões do registro no client e no servidor para decidir o que fazer com o registro.
Pois agora há. No ADO.NET 2.0 foram criadas as FillLoadOptions que permitem algumas variações no preenchimento do DataSet.
Para este objetivo a option adequada é PreserveChanges. Neste caso o fill feito sobre o dataset vai preencher apenas os originalValues, sem desfazer as alterações já existentes.
Assim sendo, depois de descobrir que ocorreu um erro de concorrência, pode-se utilizar um Fill no dataSet com a loadOption de preserveChanges para buscar o valor atual no servidor, exibir os dois valores (do servidor e do usuário) na tela para o usuário decidir o que fazer. E
Ex.:
da.FillLoadOption = Data.LoadOption.PreserveChanges
Dicas.NET - ADO.NET - Obtendo os valores atuais do banco
Veja nesta dica, como obter os valores atuais do banco em aplicações .NET, ADO.NET 2.0.
Confira outros conteúdos:
Teste unitário com NUnit
Como migrar projetos do ASP.NET MVC...
Crie relatórios com o Stimulsoft...
Por
Tipster
Em 2007