您的位置:首页 > 运维架构

MS CRM 2016/8/22 - 关于pre-operation plugin

2016-08-23 14:09 120 查看
最近有一个任务是用一个pre-operation plugin去call 一个external的restful API. 

因为用户的需求,使用了-pre-update, preimage和filter attribute.

1. 如何判断field为空

使用attribute.contain而不是判断是不是为null, 因为如果field的值为空时,preimageentity 和 target entity都不会包含这个attribute.

2. 除了text field之外的其他类型的field

text field可以直接使用toString()去直接转化, 但是其他类型的field比如lookup, datetime 和 Guid, 你需要先转化attribue[]中的object为对应的类型, 然后去获得对应的值,如lookup的ID, optionSet 的value.

3. optionSet的text value

不使用attribute而使用formattedvalue[ ]

4..preimage 和 filteredAttribute

preimage 包含所有没修改前的值

plugincontext中包含filteredAttribute中被修改的field, 以及实体的ID, modified on等值,也就是说你可以在这个实体中找到被修改的值。

通过这个plugin, 之前遗忘的一些知识都得到了复习, 还学习了如何消费external restful api. 

之后准备翻译一些比较有帮助的英文博客以及crm 论坛上一些有意思的问题和回答。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  MS CRM