问题描述:

I am creating an ASP.NET web service that implements a specific existing WSDL. There are a couple minor differences that are probably not a big deal, but I would like to get as close of a match as possible. I am starting to think this isn't even possible.

This first difference is the wsdl:definitions are in a different order, and have one additional value.

This is what I want it to look like:

<wsdl:definitions

xmlns:http="http://schemas.xmlsoap.org/wsdl/http/"

xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"

xmlns:s="http://www.w3.org/2001/XMLSchema"

xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"

xmlns:tns="urn:MyNamespace:Gateway"

xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/"

xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"

targetNamespace="urn:MyNamespace:Gateway"

xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"

>

and this is what I am getting:

<wsdl:definitions

xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"

xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/"

xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"

xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"

xmlns:tns="urn:MyNamespace:Gateway"

xmlns:s="http://www.w3.org/2001/XMLSchema"

xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/"

xmlns:http="http://schemas.xmlsoap.org/wsdl/http/"

targetNamespace="urn:MyNamespace:Gateway"

xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"

>

Notice that they are in a different order, and I have the additional soap12 namespace. How do I get them in the same order and remove the soap12 namespace?

网友答案:

According to http://forums.parasoft.com/index.php?showtopic=920 you can switch off the soap12 namespace with the following code in your web.config:

<system.web>
 <webServices>
   <protocols>
     <remove name="HttpSoap12"/>
   </protocols>
 </webServices>
</system.web>
相关阅读:
Top