WCF Сервисный договор несоответствие - PullRequest
0 голосов
/ 04 февраля 2019

Нужна ваша помощь в использовании одного из веб-сервисов WCF.Работающий сервис, и в моем приложении мы уже используем много методов из сервиса.Я только что добавил новый метод в службу WCF.Когда я тестирую новый метод в сервисе WCF, он работает нормально, при тестировании сервиса в одиночку проблем не возникает.Но я добавил новую службу WCF dll в свое веб-приложение и, пытаясь использовать мой новый метод, я всегда получаю это сообщение об ошибке, я не понимаю, какую ошибку я здесь делаю.Пожалуйста, помогите мне.
Ошибка:

из-за несоответствия ContractFilter в EndpointDispatcher Это может быть либо из-за несоответствия контракта (несовпадающие действия между отправителем и получателем), либонесоответствие привязки / безопасности между отправителем и получателем.Убедитесь, что отправитель и получатель имеют один и тот же контракт и одну и ту же привязку (включая требования безопасности, например, Сообщение, Транспорт, Нет).

Нет проблем со службой WCF, потому что все другие методы из служб работают нормально, кроме недавно добавленного метода.

var response = client.GetAllCountries(new GetAllCountriesRequest
        {
           Language = "Eng",
           IndustryCode = "TP"
        })

1 Ответ

0 голосов
/ 04 февраля 2019

Вот что может быть вашей проблемой: при добавлении нового метода в вашу службу вам нужно обновить документ WSDL, перейдя в visual studio, щелкните правой кнопкой мыши службу и выберите UpdateConfiguration

https://support.pcmiler.com/en/support/solutions/articles/19000080955-update-a-net-project-service-or-web-reference-with-latest-wsdl

Со временем метаданные для службы WCF могут измениться, что потребует обновления ссылки на службу.

. Ссылка на службу обновления .NET:

InВ обозревателе решений щелкните правой кнопкой мыши ссылку на службу и выберите команду Обновить ссылку на службу.

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

Обновление веб-ссылки:

В обозревателе решений откройте папку App_WebReferences вашего проекта и щелкните узел для веб-ссылки, которую вы хотите обновить.

Щелкните правой кнопкой мышии нажмите Обновить веб-ссылку.

Загружаются новые файлы для веб-службы XML.Эд к вашему проекту.Информация для веб-службы XML обновляется в вашем проекте.

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