我需要在Microsoft Dynamics CRM和第三方服务器之间实现双向通信。理想情况如下:
更具体地说,当用户尝试创建新的实体实例时,我想做类似的事情:
try {
ExternalWebService.CreateTrade(ref TradeInfo info)
//this was initialized on the external server
myCRM_Trade_Entity.SerialNo = info.SerialNo;
CreateNew(myCRM_Trade_Entity);
} catch (whatever) {
fail;
}
建议的方法是什么?我是Dynamics的新手,已阅读有关工作流程和插件的信息,但我不确定应该如何正确地执行此操作。
答案 0 :(得分:2)
这样做的方法显然是一个插件,除非Web服务调用的进程很长并且可能会超时。
避免创建实体的唯一方法是创建一个插件并将其挂钩到预创建事件上,就像你说的那样。
使用工作流程时,必须在执行工作流程之前保存实体。
我认为你很好。但是,我会避免包含库,webservice解决方案应该更好,因为在注册插件程序集之前不需要注册其他库。