C# 如何将sql事务传递给不同类中的方法?

C# 如何将sql事务传递给不同类中的方法?,c#,sql-server,C#,Sql Server,我正在使用ASP.NET(VB.NET),SQL 2008项目。我需要使用不同类中的方法将数据写入多个表。我必须确保所有数据都是使用一个事务写入的,所以我使用的是较旧的方法(不是TransactionScope),那么我是否必须将连接和事务都从主方法传递到方法(如果我使用TransactionScope怎么办) 那么,我是否必须将连接和事务都从main方法传递到方法 对。此外,您创建的任何命令都必须将其连接和事务属性分别分配给您传递的连接/事务 (如果我使用TransactionScope怎么办

我正在使用ASP.NET(VB.NET),SQL 2008项目。我需要使用不同类中的方法将数据写入多个表。我必须确保所有数据都是使用一个事务写入的,所以我使用的是较旧的方法(不是TransactionScope),那么我是否必须将连接和事务都从主方法传递到方法(如果我使用TransactionScope怎么办)

那么,我是否必须将连接和事务都从main方法传递到方法

对。此外,您创建的任何命令都必须将其连接和事务属性分别分配给您传递的连接/事务

(如果我使用TransactionScope怎么办)


非常容易。您只需在main中打开一个新的事务作用域,然后需要在事务作用域中登记的任何方法都可以使用选项
TransactionScopeOption打开一个新的事务作用域。必需的
,它们将自动从main登记到环境事务中。您不需要传递任何信息。

如果我在子方法中调用“Complete”,它将不会提交以前的所有数据插入,对吗???@Nalaka526:如果它是嵌套范围,则在提交外部范围之前不会提交。抱歉我的愚蠢。。。如果我只在父方法中打开TransactionScope(在子方法中没有TransactionScope),可以吗?主方法TransactionScop是否也会包装子方法数据存储?