【发布时间】:2012-03-12 15:33:58
【问题描述】:
我正在使用DatacontractSerializer 将我的 domainModel 序列化为一个 xml 文件。
我得到如下输出。
<z:anyType xmlns:i="http://www.w3.org/2001/XMLSchema-instance" z:Id="1" xmlns:d1p1="DCSerialization_IGITApproach" i:type="d1p1:X" xmlns:z="http://schemas.microsoft.com/2003/10/Serialization/">
<d1p1:Name z:Id="2">Ankit</d1p1:Name>
<d1p1:PointsDictionary xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays" z:Id="3" z:Size="1">
<d2p1:KeyValueOfstringPointsArrayq9VX7VJJ>
<d2p1:Key z:Id="4">key1</d2p1:Key>
<d2p1:Value xmlns:d4p1="http://schemas.datacontract.org/2004/07/SerializationApproach" z:Id="5">
<d4p1:points z:Id="6" z:Size="2">
<d2p1:double>45.5</d2p1:double>
<d2p1:double>546.45</d2p1:double>
</d4p1:points>
</d2p1:Value>
</d2p1:KeyValueOfstringPointsArrayq9VX7VJJ>
</d1p1:PointsDictionary>
</z:anyType>
我想摆脱这些“d1p1”命名空间前缀,只想要</PointDictionary> 类似标签而不是</d1p1:PointsDictionary>。
我已经尝试将 DataMember 属性放在我的类属性上,但它并没有解决很多问题。
由于最终用户可以编辑输出 XML 文件,因此与上述文件相比,我想要一个看起来更清晰的 XML 文件。
首要任务是仅通过代码控制它,如果不可能,则使用 XSLT 或任何其他模式。
【问题讨论】:
-
欢迎使用 StackOverflow:如果您发布代码、XML 或数据示例,请在文本编辑器中突出显示这些行并单击“代码示例”按钮 (
{ }) 在编辑器工具栏上很好地格式化和语法突出显示它!
标签: serialization namespaces xml-serialization prefix wcf-serialization