2017-02-06 19 views
0

я использую IBM.data.server для подключения Informix с помощью Entity Framework 6при использовании System.Transactions подключения базы данных подключения ошибки

using (var test = new COMMONEntities()) 
{ 
    var configs = from a in test.SYS_CONFIG select a ; 
    foreach (var u in configs) 
    { 
     Console.WriteLine(u.ID); 
    } 

} 

Коннект нормально! Однако, когда я использую System.Transactions, он не может подключение к базе данных

System.Transactions.TransactionOptions transactionOptions = new TransactionOptions(); 
transactionOptions.IsolationLevel =IsolationLevel.ReadCommitted; 
using (var transactionScope = new System.Transactions. 
      TransactionScope(TransactionScopeOption.Required, transactionOptions)) 
{ 
     using (var test2 = new COMMONEntities()) 
     { 
     var configs = from a in test2.SYS_CONFIG select a; 
     foreach (var u in configs) 《== here will Exception (db2 can’t open) 
     { 
     Console.WriteLine(u.ID); 
     } 
     transactionScope.Complete(); 
} 

Отсутствие какой конфигурации?

+0

DB2 или Informix? Вы знаете, это разные вещи. – mustaccio

+0

informix use ibm.data.db2, есть ошибка. Msg – chestnutsJ

+0

Похоже, вы забыли отправить сообщение об ошибке. Тем не менее, DB2 и Informix - это разные вещи. С какой базой данных вы подключаетесь? Пожалуйста, оставляйте только соответствующие теги. – mustaccio

ответ

0

по умолчанию сущность Framework использует транзакцию. Делайте все свои добавления, обновления, удаления и затем используйте метод сохранения, вот и все.