我有一个wcf Web服务,它会在每次来自客户端的调用时实例化。
webservice为每个客户创建一个事务,如下所示:
false
创建事务函数如下所示:
coreDb = new CoreDb(PROJECT.CreateTransaction(), new FactorySqlCommand());
SQL命令工厂实现如下所示
public static SqlTransaction CreateTransaction(this ICoreProject coreProj)
{
SqlConnection conn = new SqlConnection(coreProj.dbStr);
conn.Open();
return conn.BeginTransaction();
}
当我尝试在数据库函数中使用以下对象时:
public SqlCommand SqlCommand(string query,
SqlTransaction transaction)
{
SqlCommand sql_command = new SqlCommand(query, transaction.Connection, transaction);
sql_command.Transaction = transaction;
sql_command.Connection = transaction.Connection;
return sql_command;
}
我收到一个奇怪的错误
连接断开,无法恢复。连接 由服务器标记为不可恢复。没有尝试过 恢复连接。
我的问题是为read& amp;实例化事务的正确方法是什么?在一个类中写入要传递给许多不同的类?
请记住,每个函数调用都会附加SqlCommand对象,以便在将数据返回给请求客户端之前可以调用所有SqlCommands。