XObject.AddAnnotation(Object) 方法

定义

将对象添加到此 XObject 的批注列表。Adds an object to the annotation list of this 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

一个对象,其中包含要添加的批注。An object that contains the annotation to add.

示例

下面的示例将批注添加到 XElementThe following example adds an annotation to an 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  

该示例产生下面的输出:This example produces the following output:

T1  

注解

请注意,批注不是信息集的一部分;它们不会保留,也不会 ToString显示。Note that annotations are not part of the infoset; they are not persisted, or displayed by ToString. 此外,如果将 XML 命名空间导入到 VB 项目中并使用 OmitDuplicateNamespaces 枚举值调用 AddAnnotation,则只有一个元素将包含 XML 命名空间特性,而不是每个元素。Also, if you import an XML Namespace into your VB project and call AddAnnotation with the SaveOptions.OmitDuplicateNamespaces enumeration value, then only one element will contain the XML Namespace attribute instead of every element. 有关详细信息,请参阅删除 XML 文本中的重复命名空间For more information, see Removing duplicate namespaces in XML Literals.

适用于

另请参阅