我创建了一个sqlconnection,CN1。然后打开CN1。稍后在代码中有一个transactioncope。如果我在这个CN1连接上执行sql命令,这是在事务中吗?
代码看起来像这样;
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?
...
}
答案 0 :(得分:9)
必须在TransactionScope中打开连接,以确保连接在事务中注册。
这可以在this MSDN示例中的connection.Open
上方的评论中找到。
答案 1 :(得分:5)