删除 TransactionScopeRequired = true
Remove TransactionScopeRequired = true
我在 windows 服务上有一个操作合同,它有一个属性
[OperationBehavior(TransactionScopeRequired = true)]
我想去掉这个属性。原因:
containerize the service.
and Containerized apps do not support MSDTC , that's the purpose of the attribute!
这样做有什么影响?
我可以确认操作合同中的代码插入到单个数据库中。
没有触发任何事件,但我不确定是否存在消费该服务的交易。
我能得到一些建议吗?
您的服务需要交易。
只有你自己知道是否有必要,我们无法检查你的服务和数据库来检查。
请注意,这不仅可以启用 本地 事务,而且 - 根据绑定 - 还可以启用 分布式事务 。 See here for details.
你的新系统好像不支持这个(MSDTC是MS的Distributed Transaction Controller)。同样,当您转移到这个系统时,这是否会成为一个问题,我们无从得知。您必须查看系统架构,看看这是否是包含的内容 "just because" 并且可以删除而无需替换,或者它是否是您需要保留的系统的关键功能。
我在 windows 服务上有一个操作合同,它有一个属性
[OperationBehavior(TransactionScopeRequired = true)]
我想去掉这个属性。原因:
containerize the service. and Containerized apps do not support MSDTC , that's the purpose of the attribute!
这样做有什么影响? 我可以确认操作合同中的代码插入到单个数据库中。 没有触发任何事件,但我不确定是否存在消费该服务的交易。
我能得到一些建议吗?
您的服务需要交易。
只有你自己知道是否有必要,我们无法检查你的服务和数据库来检查。
请注意,这不仅可以启用 本地 事务,而且 - 根据绑定 - 还可以启用 分布式事务 。 See here for details.
你的新系统好像不支持这个(MSDTC是MS的Distributed Transaction Controller)。同样,当您转移到这个系统时,这是否会成为一个问题,我们无从得知。您必须查看系统架构,看看这是否是包含的内容 "just because" 并且可以删除而无需替换,或者它是否是您需要保留的系统的关键功能。