我正在尝试创建一个事件记录,其中包含一些与服务活动相关的记录。
为此,我利用RelatedEntities
属性,如下所示:
// (stripped to the essential)
Entity myRecord = new Entity("incident");
foreach(var e in myData.Select(record => record.ToEntityReference()) // (1) below
{
Entity relatedRecord = new Entity("serviceappointment");
// mandatory fields are set here (omitted)
relatedRecord["new_mylookup"] =
new EntityReference(e.LogicalName, e.Id) { Name = e.Name };
myRecord.RelatedEntities.Add(relatedRecord);
}
service.Execute(new CreateRequest(){ Target = myRecord });
(1):myData
是IQueryable<Entity>
,它从自定义实体中挑选出一些记录。数据正确率为101%(我已经检查过了)。
此代码的结果是:
incident
已创建serviceappointment
条记录*,但我的new_mylookup属性为空*。所有其他字段都很完美,并且填充了我的数据。在执行代码期间或服务器跟踪期间,我都没有看到任何错误。就查找字段而言,它是一个常见的查找(没有脚本,没有插件)设置为推荐。
代码出了什么问题?
注意:从Name
移除new EntityReference(e.LogicalName, e.Id) { Name = e.Name };
不会改变任何内容:new EntityReference(e.LogicalName, e.Id);
仍然无法填充查询。
答案 0 :(得分:1)
事实证明,我的一位同事添加了onLoad
脚本,无意中消除了我设置的相同字段。我的代码从一开始就有用。