Collections 在MS CRM中更改所有约会的组织者

Collections 在MS CRM中更改所有约会的组织者,collections,crm,microsoft-dynamics,Collections,Crm,Microsoft Dynamics,我正在尝试使用插件更改约会中的组织者。 我有一个哈希表来匹配应该用新的guid替换的guid。 我有一个后备用户,在没有匹配项时可以使用 if (entity.Attributes.Contains("organizer")) { var organizers = (EntityCollection)entity["organizer"]; var record = (Entity)organizers.Entities[0]; var organizer = (En

我正在尝试使用插件更改约会中的组织者。 我有一个哈希表来匹配应该用新的guid替换的guid。 我有一个后备用户,在没有匹配项时可以使用

if (entity.Attributes.Contains("organizer"))
{
    var organizers = (EntityCollection)entity["organizer"];

    var record = (Entity)organizers.Entities[0];

    var organizer = (EntityReference)record["partyid"];
    // create activity party record
    Entity activityParty = new Entity();
    activityParty.LogicalName = "activityparty";

    EntityCollection colAP = new EntityCollection();
    colAP.Entities.Add(activityParty);


    if (guidHash.ContainsKey(organizer.Id.ToString()))
    {
        activityParty.Attributes["partyid"] = new EntityReference("systemuser", new Guid(guidHash[organizer.Id.ToString()]));
    }
    else
    {
        activityParty.Attributes["partyid"] = new EntityReference("systemuser", new Guid(migrationUserGuid));
    }
    entity.Attributes["organizer"] = new EntityCollection();
    entity.Attributes["organizer"] = colAP;
}
我在预操作步骤中注册了插件,但什么也没发生,用户仍然是老用户


我设置EntityCollection的方式是否有问题?

假设调用了插件并且GUID正确,则需要使用实体数组而不是EntityCollection:


像往常一样,工作得很有魅力。谢谢Guido!
if (entity.Attributes.Contains("organizer"))
{
    var organizers = (EntityCollection)entity["organizer"];
    Entity record = organizers.Entities[0];
    EntityReference organizer = (EntityReference)record["partyid"];

    // create activity party record
    Entity activityParty = new Entity(activityparty");

    if (guidHash.ContainsKey(organizer.Id.ToString()))
    {
        activityParty["partyid"] = new EntityReference("systemuser", new Guid(guidHash[organizer.Id.ToString()]));
    }
    else
    {
        activityParty["partyid"] = new EntityReference("systemuser", new Guid(migrationUserGuid));
    }
    entity["organizer"] = new Entity[] { activityParty };
}