XObject.Annotation 方法

定义

重载

Annotation(Type)

从此 XObject 获取指定类型的第一个批注对象。

Annotation<T>()

从此 XObject 获取指定类型的第一个批注对象。

Annotation(Type)

从此 XObject 获取指定类型的第一个批注对象。

public:
 System::Object ^ Annotation(Type ^ type);
public object Annotation (Type type);
public object? Annotation (Type type);
member this.Annotation : Type -> obj
Public Function Annotation (type As Type) As Object

参数

type
Type

要检索的批注类型。

返回

Object

包含与指定类型匹配的第一个批注对象的 Object;如果没有指定类型的批注,则为 null

示例

以下示例将批注添加到一个 XElement。 然后,它会检索批注,指定要检索的类型。

public class MyAnnotation {  
    private string tag;  
    public string Tag {get{return tag;} set{tag=value;}}  
    public MyAnnotation(string tag) {  
        this.tag = tag;  
    }  
}  

public class Program {  
    public static void Main(string[] args) {     
        MyAnnotation ma = new MyAnnotation("T1");  
        XElement root = new XElement("Root", "content");  
        root.AddAnnotation(ma);  

        MyAnnotation ma2 = (MyAnnotation)root.Annotation(typeof(MyAnnotation));  
        Console.WriteLine(ma2.Tag);  
    }  
}  
Public Class MyAnnotation  
    Private _tag As String  

    Property Tag() As String  
        Get  
            Return Me._tag  
        End Get  
        Set(ByVal Value As String)  
            Me._tag = Value  
        End Set  
    End Property  

    Public Sub New(ByVal tag As String)  
        Me._tag = tag  
    End Sub  
End Class  

Module Module1  
    Sub Main()  
        Dim ma As MyAnnotation = New MyAnnotation("T1")  
        Dim root As XElement = <Root>content</Root>  
        root.AddAnnotation(ma)  

        Dim ma2 As MyAnnotation = DirectCast(root.Annotation(GetType(MyAnnotation)), MyAnnotation)  
        Console.WriteLine(ma2.Tag)  
    End Sub  

End Module  

该示例产生下面的输出:

T1  

另请参阅

适用于

Annotation<T>()

从此 XObject 获取指定类型的第一个批注对象。

public:
generic <typename T>
 where T : class T Annotation();
public T Annotation<T> () where T : class;
public T? Annotation<T> () where T : class;
member this.Annotation : unit -> 'T (requires 'T : null)
Public Function Annotation(Of T As Class) () As T

类型参数

T

要检索的批注类型。

返回

T

与指定类型匹配的第一个批注对象;如果没有指定类型的批注,则为 null

示例

以下示例向元素添加批注,然后通过此方法检索该批注。

public class MyAnnotation {  
    private string tag;  
    public string Tag {get{return tag;} set{tag=value;}}  
    public MyAnnotation(string tag) {  
        this.tag = tag;  
    }  
}  

public class Program {  
    public static void Main(string[] args) {     
        MyAnnotation ma = new MyAnnotation("T1");  
        XElement root = new XElement("Root", "content");  
        root.AddAnnotation(ma);  

        MyAnnotation ma2 = root.Annotation<MyAnnotation>();  
        Console.WriteLine(ma2.Tag);  
    }  
}  
Public Class MyAnnotation  
    Private _tag As String  

    Property Tag() As String  
        Get  
            Return Me._tag  
        End Get  
        Set(ByVal Value As String)  
            Me._tag = Value  
        End Set  
    End Property  

    Public Sub New(ByVal tag As String)  
        Me._tag = tag  
    End Sub  
End Class  

Module Module1  
    Sub Main()  
        Dim ma As MyAnnotation = New MyAnnotation("T1")  
        Dim root As XElement = <Root>content</Root>  
        root.AddAnnotation(ma)  

        Dim ma2 As MyAnnotation = root.Annotation(Of MyAnnotation)()  
        Console.WriteLine(ma2.Tag)  
    End Sub  
End Module  

该示例产生下面的输出:

T1  

另请参阅

适用于