【问题标题】:Does MSCRM web-service support database transactions?MSCRM Web 服务是否支持数据库事务?
【发布时间】:2009-06-24 08:49:21
【问题描述】:

人们会假设任何基于 Web 的数据应用程序都认为数据库事务将是设计的一个组成部分。环顾 CrmService,我找不到任何表明事务性 'CRUD' 可用的东西。 MSCRM 中是否不支持/实施这种情况?

如果是这样,而我错过了,请有人指出我正确的方向。我担心在我编写的自定义导入/注册例程中编写大量“修复代码”来解决错误/异常。

【问题讨论】:

    标签: database web-services transactions dynamics-crm crm


    【解决方案1】:

    不,CRM 中没有类似数据库的事务支持。关于最接近的事情是注册一个运行记录的 PreCreate 的插件/标注......如果其中的某些内容失败,则不会创建记录本身,但在失败之前仍然可能有成功的步骤。

    【讨论】:

    • 谢谢。虽然我认为这个公平的标准功能没有被纳入微软的 CRM 实施中是一种耻辱。
    【解决方案2】:

    嗯,Dynamics CRM 4.0 不包括事务支持。

    但是,幸运的是,5.0 版本将...见:http://blogs.msdn.com/ukcrm/archive/2008/11/10/what-s-new-in-crm5.aspx

    【讨论】:

    • 5.0 将不支持事务,除非在插件的上下文中。
    • 你是对的。另一方面,有些人会争辩说,通过多个 Web 服务调用的事务不符合 SOA 精神(我确实从一位 MS 传播者那里收到了这个答案),因为 Web 服务调用应该是原子的……但是在实践中,我更喜欢这种事务支持,而不是自定义补偿逻辑。到目前为止,通过 ASMX Web 服务,我使用 COM+ 事务和 MSDTC 机制。
    • 不幸的是,链接已失效。有人知道相同的另一个资源吗?
    【解决方案3】:

    我也曾在 Dynamics CRM Forum 询问过这个问题

    很遗憾,当前的 Dynamics CRM Web 服务不支持事务处理。这是相当危险的,因为我们的自定义解决方案会调用多个 Web 服务调用来实现一个整体的工作单元,如果其中一个 Web 服务调用在执行过程中遇到错误,则会产生数据完整性问题

    问候

    哈迪特奥

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-02-10
      • 2011-10-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-05-14
      • 1970-01-01
      相关资源
      最近更新 更多