Контрактное несоответствие между отправителем и получателем SOAP-запроса - PullRequest
0 голосов
/ 25 января 2019

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

enter image description here

 XmlDocument doc = new XmlDocument();
        string xmlDoc = ReadXML(@"..\..\PayLoad.xml");
        doc.LoadXml(xmlDoc);

        //Create web request
        HttpWebRequest req = (HttpWebRequest)WebRequest.Create("https://teslaperf.sandbox.operations.dynamics.com/soap/services/TSLAJournalUploadConcurGroup");           
        req.Headers.Add("Authorization", OAuthHelper.GetAuthenticationHeader(true));
        req.ContentType = "text/xml;charset=\"utf-8\"";
        req.Accept = "text/xml";
        req.Method = "POST";

        //
        using (Stream stream = req.GetRequestStream())
        {
            doc.Save(stream);
        }

        try
        {
            using (WebResponse response = req.GetResponse())
            {
                using (StreamReader rd = new StreamReader(response.GetResponseStream()))
                {
                    string soapResult = rd.ReadToEnd();
                    Console.WriteLine(soapResult);
                }
            }
        }
        catch (WebException e)
        {
            if (e.Status == WebExceptionStatus.ProtocolError)
            {
                WebResponse resp = e.Response;
                using (StreamReader sr = new StreamReader(resp.GetResponseStream()))
                {
                    Console.WriteLine(sr.ReadToEnd());
                }
            }
        }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...