WCF REST Xml响应类型
我有一个WCF REST服务,它公开了几十个对象,并基于url格式通过3种不同的方法路由调用。例如:WCF REST Xml响应类型,xml,wcf,rest,xml-serialization,Xml,Wcf,Rest,Xml Serialization,我有一个WCF REST服务,它公开了几十个对象,并基于url格式通过3种不同的方法路由调用。例如: Protected Function [get](ByVal objType As String, ByVal id As String, ByVal propertyList As String, ByVal token As String) As Object 这些方法中的每一个都返回一个对象或BaseObj(所有返回的类型都从中继承)。不过,最终的问题是,当我查看XML时,会得到一个类似
Protected Function [get](ByVal objType As String, ByVal id As String, ByVal propertyList As String, ByVal token As String) As Object
这些方法中的每一个都返回一个对象或BaseObj(所有返回的类型都从中继承)。不过,最终的问题是,当我查看XML时,会得到一个类似以下内容的包装器:
<ArrayOfBaseObj xmlns="http://objects/" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
<BaseObj i:type="Event">
<!-- Event object details -->
</BaseObj>
</ArrayOfBaseObj>
而不是键入与返回的实际对象相同的元素,如:
<ArrayOfEvent xmlns="http://objects/" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
<Event>
<!-- Event object details -->
</Event>
</ArrayOfEvent>
是否仍然可以让XML序列化程序使用包装元素的类型名而不是基类型?JSON似乎返回了正确的类型,这只是xml序列化,我还没有完全了解它。您需要添加属性[CollectionDataContract]。查看文章了解更多信息。那么,除了使用另一个类来表示系统中每种类型的特定列表之外,没有其他方法可以做到这一点吗?