예제 #1
0
 static bool SetTransactionLevel(ISqlConnectionTransactionController controller, IsolationLevel isolationLevel)
 {
     using (var cmd = new SqlCommand($"SET TRANSACTION ISOLATION LEVEL {isolationLevel.ToSqlString()};"))
     {
         cmd.Transaction = controller.Transaction;
         cmd.Connection  = controller.Connection;
         try
         {
             cmd.ExecuteNonQuery();
             return(true);
         }
         catch (Exception ex)
         {
             controller.SqlCallContext.Monitor.Error($"Failed to set isolation level {isolationLevel}.", ex);
             return(false);
         }
     }
 }