【发布时间】:2016-10-27 09:17:30
【问题描述】:
我有一个用 vb.net 编写的 REST 服务,它使用内置的序列化程序返回数据,所以如果我从这样定义的类返回数据:
Public Class Minion
Public Property Name As String = ""
Public Property ID As String = ""
End Class
我的 xml 会像这样返回:
<?xml version="1.0"?>
<Minion xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Testv3">
<ID>1</ID>
<Name>Kevin</Name>
</Minion>
但是我怎样才能在我的 xml 元素中添加一个前缀,以便我可以看到类似的内容:
<myLevel1:Minion>
<mylevel2:ID>
我需要自己序列化数据吗?
【问题讨论】:
-
您可以定义生成的命名空间,将类似这样的内容添加到 Minion 类:
<DataContract(Name := "Minion", [Namespace] := "your namespace")>。要控制前缀,你需要实现一个序列化器,这个链接可以帮助你:stackoverflow.com/a/17798306/4730201 -
感谢您的回答,我认为这是我首先想到的,我需要自己序列化数据。这很烦人,因为您可以设置 ElementName 和 NameSpace 之类的东西,但不能设置前缀。 :-(