I created a sqlconnection, CN1. Then this CN1 is opened. Later in the code there is a transactionscope. If I execute a sql command on this CN1 connection, is this within transaction?
Code looks like this;
SqlConnection cn1 = new SqlConnection();
cn1.Open(); //connection opened when there is no ambient transaction.
...
using(TransactionScope scope = new TransactionScope())
{
SqlCommand cmd; //a typical sql command.
...
cmd.ExecuteNonQuery(); //Is this command within transaction?
...
}
From stackoverflow
-
It is better to open the connection within the TransactionScope to ensure that the connection is enrolled in the transaction.
See the comment just above the connection.Open in this MSDN example.
mkus : is there any solution to solve this problem within transactionscope other than open sql connection in the transactionoption?Can Enlist methods be helpful about this? -
- No, command is not executed in transaction
- Open connection inside the scope or use EnlistTransaction method of SqlConnection instance. See my answer in different thread.
0 comments:
Post a Comment