Я уже давно был в тупике. Я пытаюсь создать запрос SOAP на основе информации из файла WSDL для отправки в веб -службу и получить ответ. Из того, что я прочитал в Интернете, это должен быть довольно простым процессом, и все учебники и руководства были почти одинаковыми.string message = @"
BB
";
HttpWebRequest webRequest = (HttpWebRequest) WebRequest.Create(@"http://www.webservicex.net/stockquote.asmx");
webRequest.Headers.Add(@"SOAPAction:http://www.webservicex.net/GetQuote");
webRequest.ContentType = "text/xml;charset=\"utf-8\"";
webRequest.Method = "POST";
XmlDocument soapEnvelopeXml = new XmlDocument();
soapEnvelopeXml.LoadXml(message);
using (Stream stream = webRequest.GetRequestStream())
{
soapEnvelopeXml.Save(stream);
}
using (WebResponse response = webRequest.GetResponse())
{
using (StreamReader rd = new StreamReader(response.GetResponseStream()))
{
string soapResult = rd.ReadToEnd();
Console.WriteLine(soapResult);
}
}
< /code>
Я не должен четко понимать, как все это работает, насколько я понимаю, http -запрос отправляется в веб -службу, которую мы указываем в методе WebRequest.create () вместе с какой -то другой информацией, такой как мыло, который, как я предполагаю, является фактическим методом, который мы хотим вызвать? В теле сообщения XML -пространство имен связано, и элементы имеют доступ через это пространство имен (GetQuote, Symbol). Так что для меня все звучит так, как будто это должно течь. Должно быть что -то, что мне не хватает или делаю неправильно, потому что я получаю внутреннюю ошибку сервера, когда пытаюсь прочитать ответ. < /p>
Я пытаюсь получить доступ к очень простой веб -службе с www.webservicex.com. Ссылки приведены ниже.>
Подробнее здесь: https://stackoverflow.com/questions/464 ... om-c-sharp