目前我有一些事务性UoW(TransactionScope
+ NH)的实现作为WebApi 2动作过滤器,但我准备在WCF服务级别上做同样的事情。
我需要在WCF中正确实现Uow的一些要求:
它需要是透明的,这意味着我不希望在除了启动uow的逻辑和提交/回滚之外的任何地方注入IUnitOfWork
实现。
与webapi一样,管理必须在WCF服务方法调用之前和调用之后完成,并且可能在调用期间对异常做出反应
在WCF基础架构中准备类似动作过滤器的最佳方法是什么?
我的WCF服务逻辑只需注入IRepositories
(内部有ISession
)并且没有任何东西。这样我的代码就会干净。
架构假设客户端(MVC应用程序)启动分布式事务,此事务流向WCF服务,该服务也参与当前打开的事务。
有什么警告吗?