XObject.Annotations 方法

定義

多載

Annotations(Type)

取得此 XObject 之指定類型註釋的集合。

Annotations<T>()

取得此 XObject 之指定類型註釋的集合。

Annotations(Type)

來源:
XObject.cs
來源:
XObject.cs
來源:
XObject.cs

取得此 XObject 之指定類型註釋的集合。

C#
public System.Collections.Generic.IEnumerable<object> Annotations (Type type);

參數

type
Type

要擷取的註釋類型。

傳回

IEnumerable<T>Object,包含符合此 XObject 指定類型的註釋。

範例

下列範例會將一些注釋新增至 XElement ,然後使用這個方法擷取批註集合。

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

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

        IEnumerable<object> annotationList;  
        annotationList = root.Annotations(typeof(MyAnnotation));  
        foreach (object ma in annotationList)  
            Console.WriteLine(((MyAnnotation)ma).Tag);  
        Console.WriteLine("----");  

        IEnumerable<object> stringAnnotationList;  
        stringAnnotationList = root.Annotations(typeof(string));  
        foreach (object str in stringAnnotationList)  
            Console.WriteLine((string)str);  
    }  
}  

這個範例會產生下列輸出:

T1  
T2  
----  
abc  
def  

另請參閱

適用於

.NET 9 和其他版本
產品 版本
.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, 8, 9
.NET Framework 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, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0

Annotations<T>()

來源:
XObject.cs
來源:
XObject.cs
來源:
XObject.cs

取得此 XObject 之指定類型註釋的集合。

C#
public System.Collections.Generic.IEnumerable<T> Annotations<T> () where T : class;

類型參數

T

要擷取的註釋類型。

傳回

IEnumerable<T>,包含此 XObject 的註釋。

範例

下列範例會使用這個方法來擷取元素上的注釋。

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

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

        IEnumerable<MyAnnotation> annotationList;  
        annotationList = root.Annotations<MyAnnotation>();  
        foreach (MyAnnotation ma in annotationList)  
            Console.WriteLine(ma.Tag);  
        Console.WriteLine("----");  

        IEnumerable<string> stringAnnotationList;  
        stringAnnotationList = root.Annotations<string>();  
        foreach (string str in stringAnnotationList)  
            Console.WriteLine(str);  
    }  
}  

這個範例會產生下列輸出:

T1  
T2  
----  
abc  
def  

另請參閱

適用於

.NET 9 和其他版本
產品 版本
.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, 8, 9
.NET Framework 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, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.6, 2.0, 2.1
UWP 10.0