Ошибка сборки сервисной модели с функциями Azure V2 + (.net Core 2.1) - PullRequest
0 голосов
/ 06 ноября 2019

Я использовал функцию Azure V2 (.net core 2.1) в своем приложении для функции Azure. Я использую System.ServiceModel.Primitives nuget для своего приложения функции, в котором используются пакеты ServiceBusEnvironment.

Я могу скомпилировать код и запустить функцию. При вызове функции я получаю эту ошибку времени выполнения.

   Could not load type 'System.ServiceModel.Channels.IBindingRuntimePreferences' 
from assembly 'System.ServiceModel, Version=4.0.0.0'

Я погуглил многие вещи. Но не повезло.

Затем я попытался понизить свою функцию лазури с V2 до V1 (.net Framework 4.7), и она снова заработала.

Мне нужно знать, что я делаю неправильнослучай V2. И как я могу не получить ошибку в случае V2? Есть ли разрешение для того же самого?

1 Ответ

0 голосов
/ 08 ноября 2019

Microsoft предоставила соответствующие сборки в виде пакетов на NuGet.

System.ServiceModel.Primitives - базовый пакет;добавьте другие, если это необходимо, в ваш проект.

enter image description here

Я считаю, что для загрузки System.ServiceModel.Channels вам потребуется **System.ServiceModel.Http**, установленный в вашем проекте, если онне является зависимостью, посмотрите, работает ли он после установки правильной версии System.ServiceModel.Http.

Добавление того же пакета NuGet «System.ServiceModel.Http» в ваш проект приложения, чтобы на него ссылалисьправильно. Это можно сделать с помощью пункта меню «Управление пакетом NuGet» или просто обновив файл packages.config, например

<?xml version="1.0" encoding="utf-8"?>
<packages>
  <package id="System.ServiceModel.Http" version="4.4.1" targetFramework="net461" />
  <package id="System.ServiceModel.Primitives" version="4.4.1" targetFramework="net461" />
</packages>

Дополнительная ссылка:

https://github.com/dotnet/wcf/issues/2546

Надеюсь, это поможет.

...