Классы, созданные клиентом OData от Microsoft, не компилируются

#dynamics-crm #odata #microsoft-odata

#dynamics-crm #odata #microsoft-odata

Вопрос:

Мы пытаемся использовать клиент OData от Microsoft для создания классов C # для наших пользовательских объектов в Microsoft Dynamics. Мы добавляем расширение «Подключенная служба OData» в Visual Studio и подключаемся к конечной точке Dynamics $ metadata для генерации клиентского кода в соответствии с инструкциями.

В итоге мы получили более 1100 сгенерированных исходных файлов и более миллиона строк кода. Иногда при генерации кода происходит сбой Visual Studio. В другой раз мы получили исключение нехватки памяти. Это происходит даже тогда, когда мы ограничиваем созданные объекты нашими собственными пользовательскими объектами в Dynamics.

Хуже всего то, что сгенерированный код не компилируется. Наиболее распространенной ошибкой компилятора является:

 The type or namespace name 'RelationshipAttribute' does not exist in the namespace 'Microsoft.Dynamics.CRM' (are you missing an assembly reference?)
  

Вот пример строки исходного кода, которая вызывает эту ошибку:

 private global::System.Collections.ObjectModel.Collection<global::Microsoft.Dynamics.CRM.RelationshipAttribute> _RelationshipAttributes = new global::System.Collections.ObjectModel.Collection<global::Microsoft.Dynamics.CRM.RelationshipAttribute>();
  

У кого-нибудь есть идея, почему это происходит?

Комментарии:

1. Привет, Том, ты когда-нибудь исправлял это? Я сталкиваюсь с той же проблемой.

2. @ChristopherNorris, нет, я никогда этого не делал. Мы отказались от ненужного хлама.