【问题标题】:Best options for implementing my own Transaction provider实现我自己的事务提供程序的最佳选择
【发布时间】:2010-10-12 00:40:18
【问题描述】:

我正在使用不支持交易的远程第 3 方存储解决方案。

我想为此解决方案在 .NET 中实现我自己的伪 ACIDity,方法是简单地尝试重写/删除非失败实体插入/更新以在其他插入/更新在事务上下文中失败。

以某种方式与System.Transactions 命名空间集成是否有益或更容易(有人对此有过恐怖或成功的故事吗?它是否与我正在尝试做的事情的总体思路兼容?)或者我应该创建自己的事务类和接口?

编辑:我在 MSDN 上找到了 Implementing a Resource Manager 用于与 System.Transactions 集成,这是要走的路吗?还是我应该在这个模式上建立一个自定义模型?

编辑:阅读 Hibernate 的 docs,这正是我最终想要的模式。我应该只下载 NHibernate 并删除所有 SQL 代码,还是使用它的基类和接口并实现我的自定义 CRUD 代码,还是它非常依赖 SQL?我发现自己几乎已经重写了一些方法以符合其文档。

【问题讨论】:

    标签: c# .net database architecture transactions


    【解决方案1】:

    ;-) 当我看到您的编辑时,我只是添加了那个链接。

    我可能会先探索该选项。每当有可扩展的框架可用时,您都应该犹豫自己构建一个。

    【讨论】:

      【解决方案2】:

      你应该实现一个资源管理器,是的。获得 System.Transaction 支持可不是件小事。例如,它将允许您的开发人员在同一工作单元中提交对您的资源和 Oracle 的更新。如果您将库构建为资源管理器,您将免费获得它。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2016-11-10
        • 1970-01-01
        • 2014-10-04
        • 1970-01-01
        • 2017-02-14
        • 1970-01-01
        • 2014-03-15
        相关资源
        最近更新 更多