Есть ли способ подключить клиента к существующей веб-службе WCF без использования WebHttpBinding в. Net Core 2? - PullRequest
0 голосов
/ 04 апреля 2020

Я новичок в WCF в целом, поэтому прошу прощения за любые несоответствия в вопросе.

Я пытаюсь подключиться к существующей службе WCF. Существующие клиенты службы WCF, которые я видел при использовании этой службы, использовали WebHttpBinding для подключения к службе WCF. Однако с новым клиентом я не могу использовать. NET framework и должен использовать. NET core, где WebHttpBinding не поддерживается (я попытался установить пакет nuget для System.ServiceModel.Web, и он сказал, что цель должна была быть. Net Framework - похоже, что GitHub, связанный с потенциальной поддержкой, не сделал никаких шагов для этого https://github.com/dotnet/wcf/issues/1413). Есть ли способ подключиться к существующему серверу WCF с помощью обычных HTTP-запросов? Или, если нет, используя другие средства в рамках WCF?

Я посмотрел на Что заменяет WCF в. Net Core? , но, похоже, предлагает использовать другие платформы полностью.

1 Ответ

0 голосов
/ 10 апреля 2020

Вы правы, мы можем подключить существующий сервер WCF, используя определенную библиотеку классов HttpClient. Служба WCF, созданная Webhttpbinding, называется службой отдыха WCF.
https://docs.microsoft.com/en-us/dotnet/framework/wcf/feature-details/wcf-web-http-programming-model-overview
Неправильно вызывать службу отдыха с использованием прокси-сервера. вызовите службу стиля SOAP.
https://docs.microsoft.com/en-us/dotnet/framework/wcf/wcf-client-overview
Построение запроса Http с использованием Ajax, HttpClient(C#), HttpClientFactory(Core) - хороший способ вызова службы WCF, созданной WebHttpBinding. Укажите глагол Http и присоедините тело запроса, затем отправьте запрос на URL службы, это все, что нам нужно сделать.
В настоящее время Webhttpbinding не поддерживается в DotNet Core.
https://docs.microsoft.com/en-us/dotnet/api/system.servicemodel.webhttpbinding?view=netframework-4.8
Не стесняйтесь, дайте мне знать, если есть что-то, с чем я могу помочь.

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