2011-08-26 76 views

回答

4

请阅读这篇文章在MSDN博客using new TransactionScope() Constructor

摘录:

的TransactionScope的默认构造函数,对SQL Sever的数据库编程的目的,破碎。 TransactionScope的默认 构造函数将隔离级别默认为Serializable,并将 超时设置为1分钟。 IMO在针对SQL Server工作 时,这两个设置都是有害的。

事务超时是不好的,因为它的晦涩难懂。一个SqlCommand 已经有一个默认为30秒的CommandTimeout属性。如果您 明确延长的CommandTimeout上一个SqlCommand,这是 可能意想不到的是,您的交易将在这之前超时。 但是至少可以在您的应用程序 配置文件中更改超时默认值。

相关问题