Я хочу разработать некоторую логику внутри моего плагина создания для сущности 'account'.
В основном он проверяет имена учетных записей и идентифицирует имена учетных записей, которые дублируются при создании.
Так что, если есть имя учетной записи, например Barclays, и я пытаюсь создать его снова, я предупреждаю пользователя сообщением об ошибке, что это было создано ранее, и предотвращает добавление этой записи.
public void Execute(IServiceProvider serviceProvider)
{
var context = (IPluginExecutionContext)serviceProvider.GetService(typeof(Microsoft.Xrm.Sdk.IPluginExecutionContext));
if (context.InputParameters.Contains("Target") &&
context.InputParameters["Target"] is Entity)
{
// Obtain the target entity from the input parmameters.
Entity entity = (Entity)context.InputParameters["Target"];
if (entity.LogicalName == "account")
{
bool x = true;
if (entity.Attributes.Contains("Name") != recordNamesinCRM)
{
}
else
{
throw new InvalidPluginExecutionException("You Cannot Have Duplicate Country Codes!.");
}
}
}
}
В приведенном выше коде я просто использую "recordNamesinCRM" в качестве примера, но я уверен, что есть встроенная функция или способ сравнения при создании нового имени с остальными в системе или способ подсчета повторяющихся экземпляров .