编程语言
首页 > 编程语言> > C#-高级System.Transactions调试

C#-高级System.Transactions调试

作者:互联网

是否有任何技巧,窍门或方法来获取有关System.Transactions.TransactionScope运行时行为的性能分析/记录/调试信息?

我有一个将数据提交到数据库的应用程序,即使我使用的是System.Transactions.TransactionScope,它会引发异常并且从不调用TransactionScope.Commit().

我想知道是否有TransactionScope使用的其他类的事件或详细信息,可以在运行时查询以确定我的命令(类型化数据适配器)是否正在征集环境事务.

使用Reflector查看System.Transactions.dll后,我认为System.Transactions.Diagnostics命名空间可能会有所帮助,但是任何示例都将不胜感激.

解决方法:

查看这篇文章:http://blogs.msdn.com/b/madhuponduru/archive/2008/02/18/system-transactions-trace.aspx

将以下信息添加到您的应用程序配置文件中以跟踪System.Transactions调用

<configuration>
 <system.diagnostics>
  <sources>
   <source name="System.Transactions" switchValue="Information">
   <listeners>
    <add name="tx" type="System.Diagnostics.XmlWriterTraceListener" initializeData= "tx.log" />
   </listeners>
  </source>
 </sources>
</system.diagnostics>

更多信息:
一旦获得跟踪文件,就可以在SvcTraceViewer.exe中打开跟踪
您可以启用MSDTC事务跟踪,CM跟踪以进一步了解事务
参考:

> http://msdn2.microsoft.com/en-us/library/ms229979.aspx
> http://msdn2.microsoft.com/en-us/library/ms678891.aspx
> http://support.microsoft.com/kb/926099/
> http://support.microsoft.com/kb/898918/

标签:debugging,transactionscope,c
来源: https://codeday.me/bug/20191210/2101583.html