在Web服务中接受SOAP输入作为参数

时间:2010-11-11 09:25:02

标签: .net asp.net web-services soap

我有一个webservice方法,需要接受SOAP作为输入参数。我在.NET客户端之间工作过webservices,但我从来没有使用过原始SOAP,所以我不知道该怎么做。输入的格式如下:

<?xml version="1.0" encoding="utf-8"?>
<S:Envelope xmlns:S = "http://schemas.xmlsoap.org/soap/envelope/">
    <S:Body>
        <ns2:RemoteService xmlns:ns2 = "some.ns.url">
            <RemoteServiceInput>
                <param1>123</param1>
                <param2>Asd Qwe</param2>
                <param3 xsi:nil = "true" xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"/>
            </RemoteServiceInput>
        </ns2:RemoteService >
    </S:Body>
</S:Envelope>

我的方法输入应该如何接受这个SOAP作为参数?

我使用的是ASP.NET Web服务而不是WCF。

1 个答案:

答案 0 :(得分:0)

您可以创建一个接受XElement作为参数的WebMethod(一天结束时的SOAP是XML):

[WebMethod]
public mySoapMethod(XElement soapMessage)
{
    //here you can parse your soap message
}