Dapper & TransactionScope?

Я только начал играть с Dapper. Пока мне это нравится. Не щеголь, не работает с TransactionScope? Я заметил, что даже если я никогда не называю TransactionScope.Complete затем мои изменения по-прежнему фиксируются в базе данных. Если TransactionScope не поддерживается сейчас, есть ли планы на будущее, чтобы поддержать его? Если нет, то вы должны использовать традиционное управление транзакциями (системы.Операции.Сделка)?

Update: я только что говорил с Сэмом через Twitter. Это должно сработать. Я обновлю его завтра утро (на работе) с деталями, чтобы узнать, может ли кто-нибудь понять, почему мои изменения все еще фиксируются в БД, даже когда я никогда не звонил полный.

1 ответов


Это была полностью моя вина и не понимая объект transactionscope. Соединение не включается автоматически в transactionscope, если соединение не открыто в пределах transactionscope:

Автоматическое Прикрепление

  using (var scope = new TransactionScope())
      {
        con.Open();                                
         //update/delete/insert commands here
      }

Руководство Военкомате

    con.Open();
    using (var scope = new TransactionScope())
    {
       con.EnlistTransaction(Transaction.Current);  
       //update/delte/insert statements here
    }

подробности можно узнать здесь: подробности