c# - 命名空间被添加到 XML

标签 c# xml webrequest

我有一个发送

的 WebRequest 服务(外部客户端)
<Sales>
   <Customer>
        <Name>John</Name>
   </Customer>
   <Goods>
       <Good>
          <id>5445</id>
       </Good>
       <Good>
          <id>6767</id>
       </Good>
    </Goods>
 </Sales>

但是当收到 XML 时,Goods 神秘地添加了一个 namespace 。

<Good xlmns="http://example.com/INT">

我的服务是:-

[OperationContract]
[WebInvoke(UriTemplate = "SendRequest", BodyStyle = WebMessageBodyStyle.Wrapped, Method = "POST", ResponseFormat = WebMessageFormat.Xml)]
public Sales(clsCustomer Customer, clsGoods Goods)

我必须删除 Xlmns。

当 XML 被解析为函数的参数时,Customer 对象被填充,但 Goods 对象为空。当我在 Goods 和 Good 之间添加一个额外的节点层并使用 XMLElement 接受这些值时,我发现节点 Good 现在有一个我没有添加的 namespace 。在内部,Good 现在是 <Good xlmns="http://example/Int"> , 如何防止 .NET 添加 xmlns?

最佳答案

首先将Goods 转换为整数列表中的字符串列表:

Goodstr = Goods.ConvertAll(delegate(int i) { return i.ToString(); });

并使用它来填充 XML

关于c# - 命名空间被添加到 XML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28364614/

相关文章:

powershell - 使用 PowerShell 抓取使用单点登录的网页?

c# - WebRequest "HEAD"轻量级替代

C# Outlook 加载项获取选定的电子邮件

c# - 如何从下拉列表中的数据源表访问其他列?

c# - CS1525 : Invalid expression term '<'

c++ - Windows 上的 C++ 中是否有原生 XmlReader 等效 API?

c# - 延迟加载 View 直到 Web 请求或其他长时间运行的任务完成的正确方法

c# - Maxmind - 邮政编码的纬度和经度

java - 解码长 XML 文件的单个非根节点

c# - 获取整个 XML 节点及其在字符串中的标记