Vairāk
Klients, lai nosūtītu SOAP pieprasījumu un saņemtu atbildi
Mēģinu izveidot C# klientu (tiks izstrādāts kā Windows pakalpojums), kas sūta SOAP pieprasījumus tīmekļa pakalpojumam (un saņem rezultātus).
No šī jautājuma es redzēju šo kodu:
protected virtual WebRequest CreateRequest(ISoapMessage soapMessage)
{
var wr = WebRequest.Create(soapMessage.Uri);
wr.ContentType = "text/xml;charset=utf-8";
wr.ContentLength = soapMessage.ContentXml.Length;
wr.Headers.Add("SOAPAction", soapMessage.SoapAction);
wr.Credentials = soapMessage.Credentials;
wr.Method = "POST";
wr.GetRequestStream().Write(Encoding.UTF8.GetBytes(soapMessage.ContentXml), 0, soapMessage.ContentXml.Length);
return wr;
}
public interface ISoapMessage
{
string Uri { get; }
string ContentXml { get; }
string SoapAction { get; }
ICredentials Credentials { get; }
}
Izskatās jauki, kāds zina, kā to izmantot un vai tā ir labākā prakse?
152
3
Es parasti izmantoju citu veidu, kā to pašu izdarīt
Man ir šis vienkāršais risinājums šeit:
SOAP pieprasījuma nosūtīšana un atbildes saņemšana .NET 4.0 C#, neizmantojot WSDL vai proxy klases:.
Labākā prakse ir atsaukties uz WSDL un izmantot to kā tīmekļa pakalpojuma atsauci. Tas ir vienkāršāk un darbojas labāk, bet, ja jums nav WSDL, XSD definīcijas ir labs koda elements.