我可以在 TransactionScope 中指定事务名称吗

use*_*036 5 .net sql-server transactionscope

我知道我可以指定交易名称

SqlConnection.BeginTransaction("SampleTransaction");
Run Code Online (Sandbox Code Playgroud)

但对于TransactionScope来说似乎没有办法。有人可以给一些提示吗?

cas*_*One 2

空无一人。

原因是System.Transaction命名空间中的类可以应用于任何事务资源,而不仅仅是 SQL Server。

也就是说,如果您有一个TransactionScope使用 SQL Server 管理事务的系统,以及事务性文件系统(例如 NTFS),则该名称对于 NTFS 来说没有任何意义。

如果您想使用名称,并且只使用 SQL Server,那么您需要从SqlConnection中管理事务(如调用方法所示BeginTransaction,否则,无法使用TransactionScope(尽管我确实认为会有某种信息,即使是以类扩展的形式TransactionInformation