02.11.2010, 14:54 | #1 |
Участник
|
Inactive Custom Entity
Написал универсальный плагин для разных событий. Из всех событий не хочет перехватывать только SetState. Сущность моя самодельная, я хочу перехватить событие перехода в неактивное состояние. Это ведь SetState не так ли? Сборку с PDB таскал уже сто тыщ раз и перерегистрировал сборку и каждый шаг. Почему не перехватывается SetState?
Код: public void Execute(Microsoft.Crm.Sdk.IPluginExecutionContext context) { string sId = string.Empty; string sEntityName = string.Empty; string sEventName = string.Empty; switch (context.MessageName) { case "Create": if (context.OutputParameters.Properties.Contains("id")) { sEventName = "Create"; sId = context.OutputParameters.Properties["id"].ToString(); if (context.InputParameters.Properties.Contains(ParameterName.Target) && context.InputParameters.Properties[ParameterName.Target] is DynamicEntity) { DynamicEntity entity = (DynamicEntity)context.InputParameters.Properties[ParameterName.Target]; sEntityName = entity.Name; } } break; case "Update": if (context.InputParameters.Properties.Contains(ParameterName.Target) && context.InputParameters.Properties[ParameterName.Target] is DynamicEntity) { sEventName = "Update"; DynamicEntity entity = (DynamicEntity)context.InputParameters.Properties[ParameterName.Target]; sId = ((Key)entity.Properties[entity.Name + "id"]).Value.ToString(); sEntityName = entity.Name; } break; case "SetState": throw new Exception("eeeeee"); if (context.InputParameters.Properties.Contains("EntityMoniker") && context.InputParameters.Properties["EntityMoniker"] is Moniker) { Moniker entityMoniker = (Moniker)context.InputParameters["EntityMoniker"]; sId = entityMoniker.Id.ToString(); sEntityName = entityMoniker.Name; sEventName = "SetState"; return; } break; } ICrmService serv = context.CreateCrmService(true); if (!string.IsNullOrEmpty(sId) && !string.IsNullOrEmpty(sEntityName)) ExportProcess(serv, sId, sEntityName); } |
|
02.11.2010, 14:58 | #2 |
Чайный пьяница
|
SetStateDynamicEntity сообщение попробуйте перехватывать тоже - одновременно оба. Типа:
case "SetState": case "SetStateDynamicEntity":
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
|
За это сообщение автора поблагодарили: Kipetcoff (1). |
02.11.2010, 15:05 | #3 |
Участник
|
Кажись понял... событие SetStateDynamicEntity Всем спасибо))
|
|
|
|