Подтверждение успешного обновления LINQ to SQL - PullRequest
2 голосов
/ 01 декабря 2009

Я использую LINQ to SQL . Является ли следующий код правильным, если я хочу уведомить отправителя об успешном обновлении базы данных или есть лучший способ?

           try
           {
               dc.ModelA.InsertOnSubmit(modela);
               dc.SubmitChanges();
               return true;
           }

           catch
           {
               return false;
           }

Ответы [ 2 ]

3 голосов
/ 01 декабря 2009

Лучший способ - не перехватывать исключение и не передавать его вызывающей стороне. Получив исключение, вы удаляете всю информацию о , почему вставка не удалась, что затрудняет отладку и устранение проблемы. Так что вам просто нужно это:

dc.ModelA.InsertOnSubmit(modela);
dc.SubmitChanges();
0 голосов
/ 01 декабря 2009

Более чистым подходом было бы заключить его в TransactionScope :

using (var scope = new TransactionScope())
{
   dc.ModelA.InsertOnSubmit(modela);
   dc.SubmitChanges();
   scope.Complete();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...