有没有办法制作一个C#/ .NET网络服务,通常会像这样生成XML
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header>
<DHeader xmlns="http://www.abc.com" />
</soap:Header>
<soap:Body>
<Response xmlns="http://www.abc.com">
<Result>
<ErrorObject ObjectID="string" ErrorCode="" />
</Result>
</Response>
</soap:Body>
</soap:Envelope>
生成这样的XML。
<soapenv:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapv:Header>
<DHeader xmlns="http://www.abc.com" />
</soapenv:Header>
<soapenv:Body>
<Response xmlns="http://www.abc.com">
<Result>
<ErrorObject ObjectID="string" ErrorCode="" />
</Result>
</Response>
</soapenv:Body>
</soapenv:Envelope>
尝试解决使用.NET Web服务的AXIS客户端的问题。 AXIS正在阻塞soap命名空间,需要一个soapenv命名空间。无法更改AXIS端。
任何想法或评论都会很棒。
以下是所要求的确切错误。
line -1: Element Envelope@http://www.w3.org/2003/05/soap-envelope is not a valid Envelope@http://schemas.xmlsoap.org/soap/envelope/ document or a valid substitution.
答案 0 :(得分:1)
soapenv
不是名称空间 - 它是名称空间前缀。
只要前缀引用相同的命名空间,soap
和soapenv
引用相同的内容,并具有相同的含义。
任何版本的AXIS都不太可能被破坏,特别是对待前缀。你应该假设你有一个不同的问题。请发布您收到的确切错误。