wcf能够返回的类型有哪些

Windows Communication Foundation (WCF) 使用 DataContractSerializer 做为其默认的序列化引擎以将数据转换到 XML 并将 XML 转换回数据。DataContractSerializer 是专为序列化数据协定类型而设计的。可是,它支持许多其余可视为具备隐式数据协定的类型。node

如下是能够序列化的类型:编程

一、 具备不带参数的构造函数的全部公开可见类型。数组

二、 数据协定类型。这些是已应用了 DataContractAttribute 属性的类型。表示业务对象的新自定义类型一般应做为数据协定类型建立。有关更多信息,请参见 使用数据协定可序列化类型ide

三、 集合类型。这些是表示数据列表的类型。这些类型能够是常规的类型数组或集合类型,例如 ArrayList 和 DictionaryCollectionDataContractAttribute 属性能够用于自定义这些类型的序列化,但不是必需的。有关更多信息,请参见 数据协定中的集合类型函数

四、 枚举类型。枚举(包括标志枚举)是可序列化的。或者,可使用 DataContractAttribute 属性对枚举类型进行标记,在这种状况下,必须使用EnumMemberAttribute 属性对参与序列化的每一个成员进行标记。不序列化未标记的成员。有关更多信息,请参见 数据协定中的枚举类型ui

五、.NET Framework 基元类型。集成到 .NET Framework 中的下列类型均可以进行序列化,并可视为基元类型:ByteSByteInt16Int32Int64UInt16UInt32UInt64SingleDoubleBooleanCharDecimalObject 和 Stringspa

六、 其余基元类型。这些类型不是 .NET Framework 中的基元,但可做为采用序列化的 XML 形式的基元。这些类型有DateTimeDateTimeOffsetTimeSpanGuidUriXmlQualifiedName 和 Byte 数组。 注意:与其余基元类型不一样,DateTimeOffset 默认状况下不是已知类型。(有关更多信息,请参见 数据协定已知类型)。设计

七、 使用 SerializableAttribute 属性标记的类型。.NET Framework 基类库中包含的许多类型都属于此类别。DataContractSerializer 彻底支持由 .NET Framework 远程处理、BinaryFormatter 和 SoapFormatter 使用的此序列化编程模型,包括支持 ISerializable 接口。orm

八、表示原始 XML 的类型或表示 ADO.NET 关系数据的类型。支持 XmlElement 和 XmlNode 类型的数组做为一种直接表示 XML 的方式。另外,支持实现IXmlSerializable 接口的类型,包括相关的 XmlSchemaProviderAttribute 属性、XDocument 和 XElement 类型。ADO.NET DataTable 类型和 DataSet类型(以及其类型化的派生类)都实现 IXmlSerializable 接口,所以可纳入此类别。有关更多信息,请参见 数据协定中的 XML 和 ADO.NET 类型xml

相关文章
相关标签/搜索