Entity Framework: взаимодействие между SaveChanges и Commit - PullRequest
0 голосов
/ 16 января 2019

Я пытаюсь объединить два действия:

  • Внести изменения в базу данных
  • Отправить письмо

Я надеюсь сделать что-то вроде

using (DbContextTransaction trans=..., serializable)
{
    try
    {
        db stuff;
        context.SaveChanges();
        Smtp.Send(...);
        trans.Commit();
    }
    catch (...)
    {
        trans.Rollback();
    }
}

Мой вопрос здесь заключается в том, существует ли угловой случай, когда SaveChanges завершается успешно, Smtp.Send завершается успешно, и, тем не менее, происходит ошибка Commit? (Потеря связи с БД исключена.)

Базовой базой данных будет либо SQL-сервер, либо SQLite. То есть нет базы данных Oracle с отложенными ограничениями.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...