在消息处理程序中使用Rebus TransactionContext



我正在尝试使用消息处理程序中的rebus事务上下文。我在这里阅读了文档,并在这里看到了样本,但是我不知道温莎的工作原理。

有人可以在没有任何IOC容器的情况下以EF使用ItransactionContext来理解其工作方式吗?

谢谢

我可以建议您查看rebus.unitofwork软件包,因为它为实施自定义的工作单位提供了稍高的级别API,无论是否有或没有IOC容器。P>

使用rebus.unitofwork您可以做到这一点:

Configure.With(...)
    .(...)
    .Options(o => {
        o.EnableUnitOfWork(Create, Commit, RollBack, Cleanup);
    })
    .Start();
//....
static MyCustomUnitOfWork Create() => new MyCustomUnitOfWork();
static void Commit(MyCustomUnitOfWork uow) => uow.Commit();
static void RollBack(MyCustomUnitOfWork uow) => uow.RollBack();
static void Cleanup(MyCustomUnitOfWork uow) => uow.Dispose();

MyCustomUnitOfWork可以是您想要的任何地方,例如创建EF数据库上下文并调用SaveChanges的类别,并在其上进行whate。

您可以在Wiki页面上阅读有关工作单位的更多信息,或直接转到显示rebus的样本。

相关内容

  • 没有找到相关文章

最新更新