Egenskapen Extension Indexer (Visual Basic)
Ger åtkomst till enskilda element i en samling.
Syntax
object(index)
Delar
Period | Definition |
---|---|
object |
Obligatoriska. En frågebar samling. Det vill: en samling som implementerar IEnumerable<T> eller IQueryable<T>. |
( | Obligatoriska. Anger början av indexeraregenskapen. |
index |
Obligatoriska. Ett heltalsuttryck som anger den nollbaserade positionen för ett element i samlingen. |
) | Obligatoriska. Anger slutet på indexerarens egenskap. |
Returvärde
Objektet från den angivna platsen i samlingen eller Nothing
om indexet ligger inom intervallet.
Kommentarer
Du kan använda egenskapen tilläggsindexerare för att komma åt enskilda element i en samling. Den här indexeraregenskapen används vanligtvis för utdata från XML-axelegenskaper. Egenskaperna för den underordnade XML- och XML-axeln returnerar samlingar av XElement objekt eller ett attributvärde.
Visual Basic-kompilatorn konverterar egenskaper för tilläggsindexerare till anrop till ElementAtOrDefault
metoden. Till skillnad från en matrisindexerare ElementAtOrDefault
returnerar Nothing
metoden om indexet ligger utom intervallet. Det här beteendet är användbart när du inte enkelt kan fastställa antalet element i en samling.
Den här indexeraregenskapen är som en tilläggsegenskap för samlingar som implementerar IEnumerable<T> eller IQueryable<T>: den används endast om samlingen inte har någon indexerare eller en standardegenskap.
Om du vill komma åt värdet för det första elementet i en samling eller XElementXAttribute objekt kan du använda XML-egenskapen Value
. Mer information finns i XML-värdeegenskap.
Exempel
I följande exempel visas hur du använder tilläggsindexeraren för att komma åt den andra underordnade noden i en samling XElement objekt. Samlingen nås med hjälp av den underordnade axelegenskapen, som hämtar alla underordnade element med namnet phone
i contact
objektet.
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)
Den här koden visar följande text:
Second phone number: 425-555-0145