当我从我收到的浏览器运行WCF REST方法时 在浏览器中返回WCF REST服务时,在xml元素前面的 a:?有人见过这个,知道为什么会这样吗?我正在考虑格式化元素
<?xml version="1.0"?>
<GetProductNameListResponse xmlns="TheBigContract">
<GetProductNameListResult xmlns:i="http://www.w3.org/2001/XMLSchemaintance" xmlns:a="http://schemas.datacontract.org/2004/07/ProductDTO">
<a:Product>
<a:Company i:nil="true"/>
<a:DayOfWeek i:nil="true"/>
<a:Location i:nil="true"/>
<a:TimeOfDay i:nil="true"/>
<a:TruckID>0</a:TruckID>
<a:TruckName>BBQ Smith</a:TruckName>
<a:Website>test</a:Website>
</a:Product>
<a:Product>
<a:Company i:nil="true"/>
<a:DayOfWeek i:nil="true"/>
<a:Location i:nil="true"/>
<a:TimeOfDay i:nil="true"/>
<a:TruckID>0</a:TruckID>
<a:TruckName>Bon Me</a:TruckName>
<a:Website>test</a:Website>
</a:Product>
答案 0 :(得分:0)
这仍然是有效的XML。您的内部元素在http://schemas.datacontract.org/2004/07/ProductDTO
名称空间中定义,这是有效XML如何使用同一XML文档中多个名称空间的元素的方式。您在xmlns:a=...
中看到GetProductNameListResult
了吗?它定义了该名称空间的前缀(别名)。只有单个名称空间中的元素可以没有前缀(称为默认名称空间)。
编辑:名称空间定义容器,其中元素和属性名称必须是唯一的。但是,如果它们来自不同的名称空间,则可以在同一XML文档中具有多个具有相同名称的元素类型。它与.NET名称空间类似。