在WCF响应中排除服务合同命名空间

时间:2012-10-04 20:00:09

标签: c# wcf

我正在使用内存中最令人沮丧的第三个paty工具。目前的问题:

如果我没有在ServiceContract属性中提供命名空间(我猜它与WSDL如何突破/引用xsd文件有关),它无法从我的Web服务读取WSDL,但是如果我提供一个命名空间,它无法处理返回的XML,因为当响应的根目录中有一个xmlns属性时它会消失。

我认为这是一个漫长的但有一种方法告诉WCF不要在生成的Http中使用命名空间 响应元素???

感谢。

编辑添加示例

我现在得到的(在ServiceContract属性中提供命名空间时):

<?xml version="1.0" encoding="ISO-8859-1" ?>
<HttpPostResponse xmlns="http://mynamespace.com">
  <HttpPostResult>
    <STAT xmlns="" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
      <RESPONSE _SEQUENCE_ID="1" _VERSION="1.0" _DATE="10/04/2012 12:03:21">
        <STATUS _TYPE="FAILURE" _PRODUCT_CODE="1">
          <ERROR _CODE="9002" _DESC="Bad code.  Bad code!"/>
        </STATUS>
      </RESPONSE>
    </STAT>
  </HttpPostResult>
</HttpPostResponse>

我喜欢的只是根本没有xmlns属性:

<?xml version="1.0" encoding="ISO-8859-1" ?>
<HttpPostResponse>
...

我“盲目地”,因为我基本上无法控制第三方应用程序,所以我试图找到解决方案以符合它的理解。

0 个答案:

没有答案