首页 > 其他 > 详细

Dynamics 365-RetrieveDependenciesForDeleteRequest

时间:2018-05-15 21:59:01      阅读:141      评论:0      收藏:0      [点我收藏+]

  不少人在使用Dynamics 365的时候,或多或少都会遇到Delete a Component的情况,比如Unregister a Plugin/Workflow。

  想象这么一个常见的情形:你定制了一个Custom Workflow,然后在CRM环境中新建了一个Workflow,其中使用了Custom Workflow作为Step,但是现在需求有变动,Custom Workflow不需要,你需要Unregister它。直接使用Plugin注册Tool去Unregister能够成功么?

  答案是否定的,因为还有依赖它的Workflow存在呢。这个时候你只需要选处理CRM环境中的Workflow,再去Unregister Custom Workflow就能够成功了。

  把上面的例子想的再复杂点,CRM环境中的Workflow是CRM Administrator配置的,作为开发的你完全不知道这些依赖的Workflows到底是哪些,这个时候怎么办呢?

  如果我们能够查出这些依赖的Components,然后先处理一番,是不是就可以了呢。这个时候就可以使用RetrieveDependenciesForDeleteRequest对象了。

  这个Request的使用可简单,仅有两个必填信息:ComponentType和ObjectId。对应的都是你要删除的Component的描述。

  ComponentType:对应的其实是一个枚举对象,可以参考官方描述给出对应的int值。比如Custom Workflow:90

  ObjectId:对应的就是Component的Guid了。

  调用Request之后,从RetrieveDependenciesForDeleteResponse中访问EntityCollection集合,就能得到所有依赖的Components。

  那么如何知道依赖的Component的类型和Guid呢?

  查看Entity的两个属性:DependentComponentObjectIdDependentComponentType。

  

  

Dynamics 365-RetrieveDependenciesForDeleteRequest

原文:https://www.cnblogs.com/yobyron/p/9043112.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!