XObject.AddAnnotation(Object) 方法

定义

将对象添加到此 XObject 的批注列表。

public:
 void AddAnnotation(System::Object ^ annotation);
public void AddAnnotation (object annotation);
member this.AddAnnotation : obj -> unit
Public Sub AddAnnotation (annotation As Object)

参数

annotation
Object

一个对象,其中包含要添加的批注。

示例

以下示例将批注添加到一个 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<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(Of MyAnnotation)(), MyAnnotation)  
        Console.WriteLine(ma2.Tag)  
    End Sub  

End Module  

该示例产生下面的输出:

T1  

注解

请注意,批注不是信息集的一部分;它们不会持久保存或显示。ToString 此外,如果将 XML 命名空间导入到VB项目中,并使用 SaveOptions.OmitDuplicateNamespaces 枚举值调用 AddAnnotation,则只有一个元素将包含 XML 命名空间属性,而不是每个元素。 有关详细信息,请参阅 删除 XML 文本中的重复命名空间

适用于

另请参阅