Erweiterungsindexereigenschaft (Visual Basic)
Bietet Zugriff auf einzelne Elemente in einer Auflistung.
Syntax
object(index)
Bestandteile
Begriff | Definition |
---|---|
object |
Erforderlich. Eine Sammlung, die abgefragt werden kann. Das heißt, eine Auflistung, die IEnumerable<T> oder IQueryable<T> implementiert. |
( | Erforderlich. Gibt den Anfang der Indexereigenschaft an. |
index |
Erforderlich. Ein ganzzahliger Ausdruck, der die 0-basierte Position eines Elements der Auflistung angibt. |
) | Erforderlich. Kennzeichnet das Ende der Indexereigenschaft. |
Rückgabewert
Das Objekt an der angegebenen Position in der Auflistung, oder Nothing
, wenn der Index außerhalb des Bereichs liegt.
Bemerkungen
Sie können die Erweiterungsindexereigenschaft verwenden, um auf einzelne Elemente in einer Auflistung zuzugreifen. Diese Indexereigenschaft wird in der Regel für die Ausgabe von XML-Achseneigenschaften verwendet. Die XML-Achseneigenschaften für untergeordnete oder Nachfolgerelemente geben Auflistungen von XElement-Objekten oder einen Attributwert zurück.
Der Visual Basic-Compiler konvertiert die Erweiterungsindexereigenschaften in Aufrufe der ElementAtOrDefault
-Methode. Im Gegensatz zu einem Arrayindexer gibt die ElementAtOrDefault
-Methode Nothing
zurück, wenn sich der Index außerhalb des Bereichs befindet. Dieses Verhalten ist nützlich, wenn Sie die Anzahl der Elemente in einer Auflistung nicht einfach bestimmen können.
Diese Indexereigenschaft ähnelt einer Erweiterungseigenschaft für Auflistungen, die IEnumerable<T> oder IQueryable<T> implementieren: Sie wird nur verwendet, wenn die Auflistung keinen Indexer bzw. keine Standardeigenschaft aufweist.
Um auf den Wert des ersten Elements in einer Auflistung von XElement- oder XAttribute-Objekten zuzugreifen, können Sie die XML-Eigenschaft Value
verwenden. Weitere Informationen dazu finden Sie unter XML-Werteigenschaft.
Beispiel
Das folgende Beispiel zeigt, wie Sie den Erweiterungsindexer verwenden, um auf den zweiten untergeordneten Knoten in einer Auflistung von XElement -Objekten zuzugreifen. Der Zugriff auf die Auflistung erfolgt über die Achseneigenschaft für untergeordnete Elemente, die alle untergeordneten Elemente mit dem Namen phone
im contact
-Objekt abruft.
Dim contact As XElement =
<contact>
<name>Patrick Hines</name>
<phone type="home">206-555-0144</phone>
<phone type="work">425-555-0145</phone>
</contact>
Console.WriteLine("Second phone number: " & contact.<phone>(1).Value)
Durch diesen Code wird folgender Text angezeigt:
Second phone number: 425-555-0145