XmlReader.GetAttribute Metoda

Definicja

Gdy jest zastępowany w klasie pochodnej, pobiera wartość atrybutu.When overridden in a derived class, gets the value of an attribute.

Przeciążenia

GetAttribute(String, String)

Gdy jest zastępowany w klasie pochodnej, pobiera wartość atrybutu o określonej LocalName i NamespaceURI.When overridden in a derived class, gets the value of the attribute with the specified LocalName and NamespaceURI.

GetAttribute(Int32)

Gdy jest zastępowany w klasie pochodnej, pobiera wartość atrybutu o określonym indeksie.When overridden in a derived class, gets the value of the attribute with the specified index.

GetAttribute(String)

Gdy jest zastępowany w klasie pochodnej, pobiera wartość atrybutu o określonym Name.When overridden in a derived class, gets the value of the attribute with the specified Name.

GetAttribute(String, String)

Gdy jest zastępowany w klasie pochodnej, pobiera wartość atrybutu o określonej LocalName i NamespaceURI.When overridden in a derived class, gets the value of the attribute with the specified LocalName and NamespaceURI.

public:
 abstract System::String ^ GetAttribute(System::String ^ name, System::String ^ namespaceURI);
public abstract string GetAttribute (string name, string namespaceURI);
abstract member GetAttribute : string * string -> string
Public MustOverride Function GetAttribute (name As String, namespaceURI As String) As String

Parametry

name
String

Nazwa lokalna atrybutu.The local name of the attribute.

namespaceURI
String

Identyfikator URI przestrzeni nazw atrybutu.The namespace URI of the attribute.

Zwraca

Wartość określonego atrybutu.The value of the specified attribute. Jeśli atrybut nie zostanie znaleziony lub wartość jest String.Empty, zwracana jest null.If the attribute is not found or the value is String.Empty, null is returned. Ta metoda nie przenosi czytnika.This method does not move the reader.

Wyjątki

name jest null.name is null.

Metoda XmlReader została wywołana przed ukończeniem poprzedniej operacji asynchronicznej.An XmlReader method was called before a previous asynchronous operation finished. W takim przypadku InvalidOperationException jest generowany z komunikatem "asynchroniczna operacja jest już w toku".In this case, InvalidOperationException is thrown with the message "An asynchronous operation is already in progress."

Uwagi

Następujący kod XML zawiera atrybut w określonej przestrzeni nazw:The following XML contains an attribute in a specific namespace:

<test xmlns:dt="urn:datatypes" dt:type="int"/>  

Można wyszukać dt:type atrybutu przy użyciu jednego argumentu (prefiksu i nazwy lokalnej) lub dwóch argumentów (nazwa lokalna i identyfikator URI przestrzeni nazw):You can lookup the dt:type attribute using one argument (prefix and local name) or two arguments (local name and namespace URI):

String dt = reader.GetAttribute("dt:type");  
String dt2 = reader.GetAttribute("type","urn:datatypes");  

Aby wyszukać atrybut xmlns:dt, użyj jednego z następujących argumentów:To lookup the xmlns:dt attribute, use one of the following arguments:

String dt3 = reader.GetAttribute("xmlns:dt");  
String dt4 = reader.GetAttribute("dt",http://www.w3.org/2000/xmlns/);  

Te informacje można również uzyskać przy użyciu właściwości Prefix.You can also get this information using the Prefix property.

GetAttribute(Int32)

Gdy jest zastępowany w klasie pochodnej, pobiera wartość atrybutu o określonym indeksie.When overridden in a derived class, gets the value of the attribute with the specified index.

public:
 abstract System::String ^ GetAttribute(int i);
public abstract string GetAttribute (int i);
abstract member GetAttribute : int -> string
Public MustOverride Function GetAttribute (i As Integer) As String

Parametry

i
Int32

Indeks atrybutu.The index of the attribute. Jest to indeks zaczynający się od zera.The index is zero-based. (Pierwszy atrybut ma indeks 0).(The first attribute has index 0.)

Zwraca

Wartość określonego atrybutu.The value of the specified attribute. Ta metoda nie przenosi czytnika.This method does not move the reader.

Wyjątki

i jest poza zakresem.i is out of range. Musi być nieujemna i mniejsza niż rozmiar kolekcji atrybutów.It must be non-negative and less than the size of the attribute collection.

Metoda XmlReader została wywołana przed ukończeniem poprzedniej operacji asynchronicznej.An XmlReader method was called before a previous asynchronous operation finished. W takim przypadku InvalidOperationException jest generowany z komunikatem "asynchroniczna operacja jest już w toku".In this case, InvalidOperationException is thrown with the message "An asynchronous operation is already in progress."

Przykłady

Poniższy przykład pobiera wartość trzeciego atrybutu.The following example gets the value of the third attribute.

reader.ReadToFollowing("book");
string isbn = reader.GetAttribute(2);
reader.ReadToFollowing("book")
Dim isbn As String = reader.GetAttribute(2)

GetAttribute(String)

Gdy jest zastępowany w klasie pochodnej, pobiera wartość atrybutu o określonym Name.When overridden in a derived class, gets the value of the attribute with the specified Name.

public:
 abstract System::String ^ GetAttribute(System::String ^ name);
public abstract string GetAttribute (string name);
abstract member GetAttribute : string -> string
Public MustOverride Function GetAttribute (name As String) As String

Parametry

name
String

Kwalifikowana nazwa atrybutu.The qualified name of the attribute.

Zwraca

Wartość określonego atrybutu.The value of the specified attribute. Jeśli atrybut nie zostanie znaleziony lub wartość jest String.Empty, zwracana jest null.If the attribute is not found or the value is String.Empty, null is returned.

Wyjątki

name jest null.name is null.

Metoda XmlReader została wywołana przed ukończeniem poprzedniej operacji asynchronicznej.An XmlReader method was called before a previous asynchronous operation finished. W takim przypadku InvalidOperationException jest generowany z komunikatem "asynchroniczna operacja jest już w toku".In this case, InvalidOperationException is thrown with the message "An asynchronous operation is already in progress."

Przykłady

Poniższy przykład pobiera wartość atrybutu ISBN.The following example gets the value of the ISBN attribute.

reader.ReadToFollowing("book");
string isbn = reader.GetAttribute("ISBN");
Console.WriteLine("The ISBN value: " + isbn);
reader.ReadToFollowing("book")
Dim isbn As String = reader.GetAttribute("ISBN")
Console.WriteLine("The ISBN value: " + isbn)

Uwagi

Ta metoda nie przenosi czytnika.This method does not move the reader.

Jeśli czytnik jest umieszczony w węźle DocumentType, ta metoda może być używana do pobierania literałów publicznych i systemowych, na przykład reader.GetAttribute("PUBLIC")If the reader is positioned on a DocumentType node, this method can be used to get the PUBLIC and SYSTEM literals, for example, reader.GetAttribute("PUBLIC")

Dotyczy