Не удается загрузить NetNamedPipeBending

#.net-core

#.net-core

Вопрос:

Я использую стороннюю dll, чтобы попытаться связаться с их программой. Когда я вызываю метод для открытия соединения, я получаю сообщение об ошибке

«Система.Исключение TypeLoadException: не удалось загрузить type ‘System.ServiceModel.NetNamedPipeBinding «из системы сборки».ServiceModel, Version= 4.0.0.0, Culture = нейтральный, PublicKeyToken=b77a5c561934e089’.»

Прямо сейчас я делаю это в консольном приложении, чтобы просто убедиться, что я все делаю правильно. Я вижу в документации Microsoft, что NetNamedPipeBinding должен быть классом в System.ServiceModel но, похоже, я нигде не могу его найти. Я загрузил все пакеты ServiceModel из NuGet, но не вижу привязки NetNamedPipeBinding.

Я определенно новичок, когда дело доходит до многого из этого, поэтому, пожалуйста, терпите любое злоупотребление терминологией.

Ответ №1:

Вы не можете найти его, потому что используете консольное приложение .NET Core. Если вы посмотрите на документацию, вы увидите:

Применяется к

.NET Framework 4.8 4.7.2 4.7.1 4.7 4.6.2 4.6.1 4.6 4.5.2 4.5.1 4.5 4.0 3.5 3.0

Создайте консольное приложение .NET Framework, и вы сможете использовать его из System.ServiceModel .

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

1. и, по-видимому, Microsoft. Windows. Пакет совместимости ( nuget.org/packages/Microsoft . Windows. Совместимость ) не помогает в этом :/ Я только что попытался создать библиотеку классов в .NET Core 3.1, которая загружает компонент с помощью этого пакета и выдает его во время выполнения