我在Windows服务上有一个操作合同,它有一个属性
[OperationBehavior(TransactionScopeRequired = true)]
我想摆脱这个属性。原因:
包含服务。 和Containerized应用不支持MSDTC,这就是该属性的目的!
这样做的含义是什么? 我可以确认操作合同中的代码插入到单个数据库中。 没有事件触发,但是我不确定是否有使用服务的事务。
我可以对此寻求建议吗?
答案 0 :(得分:0)
您的服务需要交易。
只有您知道这是否必要,我们无法检查您的服务和数据库。
请注意,这不仅启用了本地交易,而且-取决于绑定-还启用了分布式交易。 See here for details。
您的新系统似乎不支持此功能(MSDTC是MS的分布式事务控制器)。同样,当您移至该系统时是否会遇到问题,我们无法确定。您将不得不查看系统体系结构,并查看它是否只是“因为”而包含在内并且可以不经删除而删除,或者它是否是您系统需要保留的关键功能。