繁体   English   中英

Microsoft Dynamics CRM设置相关实体​​的字段值

[英]Microsoft Dynamics CRM set field value of related entity

我正在使用Microsoft Dynamics CRM Online。

我有一个工作的插件,该插件始于名为(让我们简化)“ entity1”的实体的创建消息(后操作)。 该插件的功能之一是确定某个值。 我们将此称为“ importantValue”。 该插件还在“ entity1”和另一个实体(再次简化)“ entity2”之间创建一个关系,并在“ entity1”中填充相应的查找字段。

所有这些都很好。 但是,我还希望该插件将“ entity2”字段(称为“ samplefield”)设置为“ importantValue”的值。 我知道如何检索Entity2相关记录的GUID,但是我无法获取该插件来更新此(已存在)记录。

这是代码制作问题的一部分。 我已经检索了GUID“ entity2Guid”并填充了重要值(它是一个字符串)。 我的IOrganizationService称为“服务”。

 Entity entity2 = new Entity("new_entity2");
 entity2.Id = new Guid (entity2Guid);
 entity2["new_samplefield"] = importantValue;
 service.Update(entity2);

我究竟做错了什么? 提前致谢!

我认为,如果您要更新自定义字段,则必须将字段名称添加到实体属性集合中。 尝试通过以下方式更新实体:

if (entity2.Attributes.ContainsKey("new_samplefield"))
    entity2["new_samplefield"] = importantValue;
else
    entity2.Attributes.Add("new_samplefield", importantValue);

也许如果您知道此属性将永远不会包含在属性集合中,则可以跳过if语句并始终添加它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM