我确定我理解这些属性都是错误的。
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();