TransactionAutoComplete

TransactionAutoComplete

我确定我理解这些属性都是错误的。


ReleaseServiceInstanceOnTransactionComplete-
根据我的理解-在交易完成之后,将您初始化的服务实例放置在客户端中。


2.TransactionAutoComplete-
根据我的理解-在操作结束后,将在客户端中初始化的服务实例进行配置。

我的英语不好,因此在阅读每篇文章后,我仍然有我不理解的平静。

感谢您的时间。

编辑1:

您能用简单的英文向我解释InstanceContext的目的是什么?
我已经读过这篇文章:http://www.danrigsby.com/blog/index.php/2008/05/23/understanding-instancecontext-in-wcf/
仍然没有得到它。

最佳答案

ReleaseServiceInstanceOnTransactionComplete实际上在事务完成或中止时处置您的服务实例。默认情况下,它设置为true。例如,如果您使用PerSession实例化创建服务,则可能需要将其设置为false以确保会话生存期而不是事务生存期。

TransactionAutoComplete与处置无关。它仅控制用于执行操作的事务。如果TransactionScopeRequired设置为true,您的操作将被TransactionScope自动换行。设置为true的TransactionAutoComplete将在操作无错误执行时自动提交事务,或者在操作引发异常时回退事务。如果将TransactionAutoComplete设置为false,则必须通过调用以下命令手动提交事务:

OperationContext.Current.SetTransactionComplete();

10-06 13:29