XmlIncludeAttribute 類別
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
讓 XmlSerializer 在對物件進行序列化或還原序列化時,能夠辨識型別。
public ref class XmlIncludeAttribute : Attribute
[System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Interface | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true)]
public class XmlIncludeAttribute : Attribute
[System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true)]
public class XmlIncludeAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Interface | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true)>]
type XmlIncludeAttribute = class
inherit Attribute
[<System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Method | System.AttributeTargets.Struct, AllowMultiple=true)>]
type XmlIncludeAttribute = class
inherit Attribute
Public Class XmlIncludeAttribute
Inherits Attribute
- 繼承
- 屬性
下列範例顯示三個類別,其中兩個類別繼承自第三個類別。 此範例會將 XmlIncludeAttribute 套用至傳回其中一個衍生類別實例的方法。
<%@ WebService Language="C#" Class="Test" %>
using System;
using System.Web.Services;
using System.Web.Services.Protocols;
using System.Web.Services.Description;
using System.Xml;
using System.Xml.Schema;
using System.Xml.Serialization;
using System.Data;
public class Test : WebService {
[WebMethod()]
[return:XmlElement("MyTime", DataType="time")]
public DateTime EchoString([XmlElement(DataType="string")]
string strval) {
return DateTime.Now;
}
[WebMethod()]
[XmlInclude(typeof(Car)), XmlInclude(typeof(Bike))]
public Vehicle Vehicle(string licenseNumber) {
if (licenseNumber == "0") {
Vehicle v = new Car();
v.licenseNumber = licenseNumber;
return v;
}
else if (licenseNumber == "1") {
Vehicle v = new Bike();
v.licenseNumber = licenseNumber;
return v;
}
else {
return null;
}
}
}
[XmlRoot("NewVehicle")]
public abstract class Vehicle {
public string licenseNumber;
public DateTime make;
}
public class Car : Vehicle {
}
public class Bike : Vehicle {
}
XmlIncludeAttribute當您呼叫 Serialize 類別的 或 Deserialize 方法時, XmlSerializer 請使用 。
套 XmlIncludeAttribute 用 時,請指定 Type 衍生類別的 。 XmlSerializer當 序列化同時包含基底和衍生類別的物件時,就可以辨識這兩種物件類型。
您可以使用 , XmlIncludeAttribute 將衍生類別包含在以 Web 服務描述語言撰寫的服務描述檔中, (WSDL) 。 例如,如果方法傳 Object 回 ,請將 套用 XmlIncludeAttribute 至 方法,並指定要傳回的實際型別。
如需 WSDL 的詳細資訊,請參閱 Web 服務描述語言 (WSDL) 1.1。
Xml |
初始化 XmlIncludeAttribute 類別的新執行個體。 |
Type |
取得或設定要包含的物件的型別。 |
Type |
在衍生類別中實作時,取得這個 Attribute 的唯一識別碼。 (繼承來源 Attribute) |
Equals(Object) |
傳回值,這個值指出此執行個體是否與指定的物件相等。 (繼承來源 Attribute) |
Get |
傳回這個執行個體的雜湊碼。 (繼承來源 Attribute) |
Get |
取得目前執行個體的 Type。 (繼承來源 Object) |
Is |
在衍生類別中覆寫時,表示這個執行個體的值是衍生類別的預設值。 (繼承來源 Attribute) |
Match(Object) |
在衍生類別中覆寫時,會傳回值,表示這個執行個體是否等於指定物件。 (繼承來源 Attribute) |
Memberwise |
建立目前 Object 的淺層複製。 (繼承來源 Object) |
To |
傳回代表目前物件的字串。 (繼承來源 Object) |
_Attribute. |
將一組名稱對應至一組對應的分派識別項 (Dispatch Identifier)。 (繼承來源 Attribute) |
_Attribute. |
擷取物件的類型資訊,可以用來取得介面的類型資訊。 (繼承來源 Attribute) |
_Attribute. |
擷取物件提供的類型資訊介面數目 (0 或 1)。 (繼承來源 Attribute) |
_Attribute. |
提供物件所公開的屬性和方法的存取權。 (繼承來源 Attribute) |
產品 | 版本 |
---|---|
.NET | Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7 |
.NET Framework | 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8 |
.NET Standard | 2.0, 2.1 |
UWP | 10.0 |