1

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

  1. ReleaseServiceInstanceOnTransactionComplete - 据我了解 - 在您的事务完成\abord 后处理您在客户端中初始化的服务实例。

2.TransactionAutoComplete-据我了解-在操作结束后处理您在客户端中初始化的服务实例。

我的英语不是那么好,所以在阅读每篇文章后,我仍然有我不明白的平静。

感谢您的时间。

编辑1:

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

4

1 回答 1

4

ReleaseServiceInstanceOnTransactionComplete当事务完成或中止时,真正处置您的服务实例。它默认设置为 true。例如,如果您使用 PerSession 实例化创建服务,您可能希望将其设置为 false 以确保您的会话生命周期而不是事务生命周期。

TransactionAutoComplete与处置无关。它只是控制用于执行操作的事务。如果TransactionScopeRequired设置为 true,您的操作将自动由TransactionScope. TransactionAutoComplete如果操作执行没有错误,设置为 true 将自动提交事务,如果操作抛出异常则回滚事务。如果设置TransactionAutoComplete为 false,则必须通过调用手动提交事务:

OperationContext.Current.SetTransactionComplete();
于 2012-04-25T11:16:49.113 回答