Udostępnij za pośrednictwem


Przetwarzanie pliku XML (Visual Basic)

Kompilator generuje ciąg Identyfikatora dla każdego konstrukcji w kodzie, który jest oznakowany do generowania dokumentacji.(Aby uzyskać informacje o tagu kodu, zobacz Zalecane tagów XML dla komentarzy dokumentacji (Visual Basic).) Ciąg Identyfikatora jednoznacznie identyfikuje konstrukcji.Programy, które przetwarzają pliku XML można użyć ciągu Identyfikatora do identyfikacji odpowiednich .NET Framework element metadanych/odbicia.

Plik XML nie jest Hierarchiczna reprezentacja kodu; jest płaska lista z wygenerowany identyfikator dla każdego elementu.

Generując ciągi identyfikatorów, kompilator przestrzega następujących zasad:

  • Nie światło jest umieszczone w ciągu.

  • Pierwsza część ciąg Identyfikatora identyfikuje rodzaj Członkowskie identyfikowane z pojedynczego znaku, po której następuje dwukropek.Używane są następujące typy Członkowskich.

Znak

Opis

N

obszar nazw

Dokumentację komentarzy nie można dodać do obszaru nazw, ale można wprowadzać CREF odwołania do nich, w przypadku gdy jest to obsługiwane.

T

type: Class, Module, Interface, Structure, Enum,Delegate

F

pola:Dim

P

Właściwości: Property (w tym właściwości domyślnych)

M

method: Sub, Function, Declare,Operator

E

zdarzenia:Event

!

ciąg błędu

Pozostałe ciąg zawiera informacje o błędzie.Visual Basic Kompilator generuje informacje o błędach dla łączy, którego nie można rozpoznać.

  • Druga część String jest w pełni kwalifikowaną nazwę elementu, zaczynając od katalogu głównego obszaru nazw.Nazwa elementu, jego otaczający typ(-y) i obszaru nazw są oddzielonych kropkami.Jeśli nazwa sam element zawiera okresy, są zastąpione przez znak numeru (#).Zakłada się, że żaden element posiada znak numeru bezpośrednio w jego nazwę.Na przykład, w pełni kwalifikowanej nazwy String byłby konstruktor System.String.#ctor.

  • Dla właściwości i metody Jeśli argumenty tej metody, lista argumentów w nawiasach następuje.Jeśli nie istnieją żadne argumenty, nawiasy nie są obecne.Argumenty są oddzielone przecinkami.Kodowanie każdego argumentu następuje bezpośrednio jak jest zakodowana w .NET Framework podpisu.

Przykład

Poniższy kod ilustruje, jak identyfikator ciągi dla klasy i generowane są jego członków.

Namespace SampleNamespace

  ''' <summary>Signature is 
  ''' "T:SampleNamespace.SampleClass"
  ''' </summary>
  Public Class SampleClass

    ''' <summary>Signature is 
    ''' "M:SampleNamespace.SampleClass.#ctor"
    ''' </summary>
    Public Sub New()
    End Sub

    ''' <summary>Signature is 
    ''' "M:SampleNamespace.SampleClass.#ctor(System.Int32)"
    ''' </summary>
    Public Sub New(ByVal i As Integer)
    End Sub

    ''' <summary>Signature is 
    ''' "F:SampleNamespace.SampleClass.SampleField"
    ''' </summary>
    Public SampleField As String

    ''' <summary>Signature is 
    ''' "F:SampleNamespace.SampleClass.SampleConstant"
    ''' </summary>
    Public Const SampleConstant As Integer = 42

    ''' <summary>Signature is 
    ''' "M:SampleNamespace.SampleClass.SampleFunction"
    ''' </summary>
    Public Function SampleFunction() As Integer
    End Function

    ''' <summary>Signature is 
    ''' "M:SampleNamespace.SampleClass.
    ''' SampleFunction(System.Int16[],System.Int32[0:,0:])"
    ''' </summary>
    Public Function SampleFunction( 
        ByVal array1D() As Short, 
        ByVal array2D(,) As Integer) As Integer
    End Function

    ''' <summary>Signature is 
    ''' "M:SampleNamespace.SampleClass. 
    ''' op_Addition(SampleNamespace.SampleClass,
    '''             SampleNamespace.SampleClass)"
    ''' </summary>
    Public Shared Operator +( 
        ByVal operand1 As SampleClass, 
        ByVal operand2 As SampleClass) As SampleClass

      Return Nothing
    End Operator

    ''' <summary>Signature is 
    ''' "P:SampleNamespace.SampleClass.SampleProperty"
    ''' </summary>
    Public Property SampleProperty() As Integer
      Get
      End Get
      Set(ByVal value As Integer)
      End Set
    End Property

    ''' <summary>Signature is
    ''' "P:SampleNamespace.SampleClass.Item(System.String)"
    ''' </summary>
    Default Public ReadOnly Property Item( 
        ByVal s As String) As Integer

      Get
      End Get
    End Property

    ''' <summary>Signature is 
    ''' "T:SampleNamespace.SampleClass.NestedClass"
    ''' </summary>
    Public Class NestedClass
    End Class

    ''' <summary>Signature is 
    ''' "E:SampleNamespace.SampleClass.SampleEvent(System.Int32)"
    ''' </summary>
    Public Event SampleEvent As SampleDelegate

    ''' <summary>Signature is 
    ''' "T:SampleNamespace.SampleClass.SampleDelegate"
    ''' </summary>
    Public Delegate Sub SampleDelegate(ByVal i As Integer)
  End Class
End Namespace

Zobacz też

Zadania

Jak: tworzenie dokumentacji XML w języku Visual Basic

Informacje

/doc