有人可以说如何获取' requiredattendees '约会被删除时的约会。 在删除约会时,我需要对这些与会者进行更新。我没有在PRE或POST上获得该聚会列表中的值。
即使是PreImage实体也没有捕获只有那些“必要的参与者”的信息。字段,休息字段在PreImage实体中是可以的。
有谁能说我做错了什么?
非常感谢你。
答案 0 :(得分:2)
您需要检索PreValidation
插件中的子记录列表,因为PreOperation
之前可能会发生级联删除/取消关联 。
假设您具有跨国诚信,您应该在PreValidation
收集此信息并保存(IPluginExecutionContext.SharedVariables
是保存guid的好地方。)在PreOperation
或PostOperation
插件可以根据您存储的所需参加者指南列表执行逻辑。
答案 1 :(得分:0)
假设您已在Delete
Preoperation
var appointment = pluginExecutionContext.InputParameters["Target"] as EntityReference;
var response = organizationService.Retrieve("appointment", appointment.Id, new ColumnSet("requiredattendees"));
var requiredAttendees = response.GetAttributeValue<EntityCollection>("requiredattendees");
foreach (var attendee in requiredAttendees.Entities)
{
//your logic
}