Раннее связывание предварительного изображения в Microsoft CRM 2011
-
26-10-2019 - |
Вопрос
Microsoft CRM Advanced Developer Advensions немного испортила их раннюю привязку для звонков, сделанных на веб -сервисах CRM.
Я пишу плагин прямо сейчас, и я хотел бы получить доступ к атрибутам, определенным в предварительном изображении. Все примеры отображают предварительное представление как Microsoft.xrm.sdk.entity, которая использует позднее привязку для доступа к своим атрибутам. Мне не нравится жесткий кодирование всех этих строк для атрибутов имен атрибутов в свой плагин, и я хотел бы найти метод, который избегает его, используя раннее привязку.
Вот пример актера
var preMessageImage = (Microsoft.Xrm.Sdk.Entity)context.PreEntityImages["MyPreImage"];
Но я должен использовать позднее привязку, чтобы получить доступ к свойствам
var myProperty = preMessageImate.Properties["MyProperty"];
Есть ли способ представить это предварительное представление к объекту XRM, который обладает всеми свойствами, определенными с использованием раннего привязки, поэтому мне не нужно жестко кодировать все имена свойств?
Решение
Сначала следует использовать инструмент CRMSVCutil в SDK для генерации XRM-объектов «раннего борьбы» и включить этот файл кода в кодовую базу плагина.
Я предлагаю пропустить ARG командной строки «DataContextName», поэтому контекст не генерируется.
Для получения дополнительной информации проверьте здесь на MSDN: Crmsvcutil на MSDN
Далее вы должны использовать ToEntity<T>
Метод класса сущности, чтобы получить конкретную конкретную сущность. Подробнее здесь: Toentity на MSDN