Freigeben über


Extension Indexer-Eigenschaft (Visual Basic)

Bietet Zugriff auf einzelne Elemente in einer Auflistung.

Syntax

object(index)  

Bestandteile

Begriff Definition
object Erforderlich. Eine abfragefähige Auflistung. Das heißt, eine Sammlung, die implementiert IEnumerable<T> oder IQueryable<T>.
( Erforderlich. Gibt den Anfang der Indexereigenschaft an.
index Erforderlich. Ein ganzzahliger Ausdruck, der die nullbasierte Position eines Elements der Auflistung angibt.
) Erforderlich. Gibt das Ende der Indexereigenschaft an.

Rückgabewert

Das Objekt von der angegebenen Position in der Auflistung oder Nothing wenn der Index außerhalb des Bereichs liegt.

Bemerkungen

Mit der Erweiterungsindexereigenschaft können Sie auf einzelne Elemente in einer Auflistung zugreifen. Diese Indexereigenschaft wird in der Regel für die Ausgabe von XML-Achseneigenschaften verwendet. Die untergeordneten XML- und XML-Achseneigenschaften geben Auflistungen von XElement Objekten oder einem Attributwert zurück.

Der Visual Basic-Compiler konvertiert Erweiterungsindexereigenschaften in Aufrufe der ElementAtOrDefault Methode. Im Gegensatz zu einem Arrayindexer gibt die ElementAtOrDefault Methode zurück Nothing , wenn der Index außerhalb des Bereichs liegt. Dieses Verhalten ist nützlich, wenn Sie die Anzahl der Elemente in einer Auflistung nicht einfach ermitteln können.

Diese Indexereigenschaft ist wie eine Erweiterungseigenschaft für Auflistungen, die implementiert IEnumerable<T> oder IQueryable<T>: sie wird nur verwendet, wenn die Auflistung keinen Indexer oder eine Standardeigenschaft aufweist.

Um auf den Wert des ersten Elements in einer Auflistung von XElement objekten XAttribute zuzugreifen, können Sie die XML-Eigenschaft Value verwenden. Weitere Informationen finden Sie unter XML-Werteigenschaft.

Beispiel

Das folgende Beispiel zeigt, wie Sie mithilfe des Erweiterungsindexers auf den zweiten untergeordneten Knoten in einer Auflistung von XElement Objekten zugreifen. Auf die Auflistung wird mithilfe der untergeordneten Achseneigenschaft zugegriffen, die alle im Objekt benannten untergeordneten Elemente abruft phonecontact .

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)

Dieser Code zeigt den folgenden Text an:

Second phone number: 425-555-0145

Siehe auch