Как развернуть odata.client на компьютере пользователя одним щелчком мыши - PullRequest
0 голосов
/ 06 июля 2019

Я разрабатываю рабочий стол приложения на C # Visual Studio 2017 с .net framework 4.6.1 и использую API данных.

Я использую OData Client Code Generator для создания прокси и использую Trippin Service для симуляции (https://services.odata.org/V4/(S(v35us2ydb4upkphl4id2qpwx))/TripPinServiceRW/).

В моей машине для разработки все отлично. При развертывании на новой машине (Windows 7 + Framework 4.6.1) одним щелчком мыши издатель столкнулся с ужасной проблемой.

System.TypeInitializationException: инициализатор типа для «ClientEdmModelCache» выдал исключение. ---> System.BadImageFormatException: не удалось загрузить файл или сборку 'System.Linq, версия = 4.0.0.0, культура = нейтральная, PublicKeyToken = b03f5f7f11d50a3a 'или одна из его зависимостей. Ссылка сборки не должны быть загружены для выполнения. Они могут быть только загружается в контексте загрузчика только для отражения. (Исключение из HRESULT: 0x80131058) ---> System.BadImageFormatException: не удается загрузить эталонная сборка для исполнения.

Ниже приведен простой код только кнопки и списка

private void button1_Click(object sender, EventArgs e)
{
     var container = new DefaultContainer(new Uri("https://services.odata.org/V4/(S(v35us2ydb4upkphl4id2qpwx))/TripPinServiceRW/"));
     var stores = container.Airlines.ToList();
     foreach (var item in stores)
     {
         listBox1.Items.Add(item.AirlineCode + " - " + item.Name);
     }
}

в

Я ожидаю, что результат будет примерно таким

AA - American Airlines
FM - Shanghai Airlines
etc..

См. Конец этого сообщения для получения подробной информации о вызове точно в срок. (JIT) отладка вместо этого диалогового окна. ************** Текст исключения ************** System.TypeInitializationException: инициализатор типа для «ClientEdmModelCache» выдал исключение. ---> System.BadImageFormatException: не удалось загрузить файл или сборку 'System.Linq, версия = 4.0.0.0, культура = нейтральная, PublicKeyToken = b03f5f7f11d50a3a 'или одна из его зависимостей. Ссылка сборки не должны быть загружены для выполнения. Они могут быть только загружается в контексте загрузчика только для отражения. (Исключение из HRESULT: 0x80131058) ---> System.BadImageFormatException: не удается загрузить эталонная сборка для исполнения. --- Конец внутренней трассировки стека исключений ---

в Microsoft.OData.Edm.Vocabularies.EdmDirectValueAnnotationsManager.SetAnnotation (IEnumerable`1 неизменные аннотации, объект и переходные аннотации, строка namespaceName, String localName, Значение объекта)

в Microsoft.OData.Edm.Vocabularies.EdmDirectValueAnnotationsManager.SetAnnotationValue (IEdmElement элемент, String namespaceName, String localName, значение объекта, VersioningDictionary`2 & annotationsDictionary)

в Microsoft.OData.Edm.Vocabularies.EdmDirectValueAnnotationsManager.SetAnnotationValue (IEdmElement элемент, String namespaceName, String localName, Значение объекта)

в Microsoft.OData.Edm.ExtensionMethods.SetAnnotationValue (IEdmModel модель, элемент IEdmElement, строка namespaceName, строка localName, Стоимость объекта)

в Microsoft.OData.Edm.ExtensionMethods.SetEdmVersion (модель IEdmModel, Версия версия)

в Microsoft.OData.Client.DataServiceContext.ClientEdmModelCache.CreateClientEdmModelCache ()

в Microsoft.OData.Client.DataServiceContext.ClientEdmModelCache..cctor ()

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...