Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Hiermee geeft u een of meer bereikvariabelen en een verzameling om een query uit te voeren.
Syntaxis
From element [ As type ] In collection [ _ ]
[, element2 [ As type2 ] In collection2 [, ... ] ]
Onderdelen
| Termijn | Definitie |
|---|---|
element |
Verplicht. Een bereikvariabele die wordt gebruikt om de elementen van de verzameling te herhalen. Een bereikvariabele wordt gebruikt om naar elk lid van de collection variabele te verwijzen als de query doorloopt.collection Moet een opsommingstype zijn. |
type |
Facultatief. Het type element. Als er geen type is opgegeven, wordt het type element afgeleid van collection. |
collection |
Verplicht. Verwijst naar de verzameling die moet worden opgevraagd. Moet een opsommingstype zijn. |
Opmerkingen
De From component wordt gebruikt om de brongegevens voor een query te identificeren en de variabelen die worden gebruikt om te verwijzen naar een element uit de bronverzameling. Deze variabelen worden bereikvariabelen genoemd. De From component is vereist voor een query, behalve wanneer de Aggregate component wordt gebruikt om een query te identificeren die alleen geaggregeerde resultaten retourneert. Zie Aggregaatcomponent voor meer informatie.
U kunt meerdere From componenten in een query opgeven om meerdere verzamelingen te identificeren die moeten worden gekoppeld. Wanneer er meerdere verzamelingen zijn opgegeven, worden ze afzonderlijk ge curseerd of kunt u ze samenvoegen als ze gerelateerd zijn. U kunt verzamelingen impliciet samenvoegen met behulp van de Select component of expliciet met behulp van de Join of Group Join componenten. Als alternatief kunt u meerdere bereikvariabelen en verzamelingen in één From component opgeven, waarbij elke gerelateerde bereikvariabele en verzameling gescheiden zijn van de andere door een komma. In het volgende codevoorbeeld ziet u beide syntaxisopties voor de From component.
' Multiple From clauses in a query.
Dim result = From var1 In collection1, var2 In collection2
' Equivalent syntax with a single From clause.
Dim result2 = From var1 In collection1
From var2 In collection2
De From component definieert het bereik van een query, wat vergelijkbaar is met het bereik van een For lus. Daarom moet elke element bereikvariabele in het bereik van een query een unieke naam hebben. Omdat u meerdere From componenten voor een query kunt opgeven, kunnen volgende From componenten verwijzen naar bereikvariabelen in de From component of kunnen ze verwijzen naar bereikvariabelen in een vorige From component. In het volgende voorbeeld ziet u bijvoorbeeld een geneste component waarin de verzameling in de tweede component is gebaseerd op een eigenschap van de bereikvariabele From in de eerste component.
Dim allOrders = From cust In GetCustomerList()
From ord In cust.Orders
Select ord
Elke From component kan worden gevolgd door elke combinatie van aanvullende querycomponenten om de query te verfijnen. U kunt de query op de volgende manieren verfijnen:
Combineer meerdere verzamelingen impliciet met behulp van de
FromenSelectcomponenten, of expliciet met behulp van deJoinofGroup Joincomponenten.Gebruik de
Wherecomponent om het queryresultaat te filteren.Sorteer het resultaat met behulp van de
Order Bycomponent.Groepeer vergelijkbare resultaten samen met behulp van de
Group Bycomponent.Gebruik de
Aggregatecomponent om statistische functies te identificeren die moeten worden geëvalueerd voor het hele queryresultaat.Gebruik de
Letcomponent om een iteratievariabele te introduceren waarvan de waarde wordt bepaald door een expressie in plaats van een verzameling.Gebruik de
Distinctcomponent om dubbele queryresultaten te negeren.Onderdelen van het resultaat identificeren die moeten worden geretourneerd met behulp van de
Skip,TakeenSkip WhileTake Whilecomponenten.
Voorbeeld
In de volgende query-expressie wordt een From component gebruikt om een bereikvariabele cust te declareren voor elk Customer object in de customers verzameling. De Where component maakt gebruik van de bereikvariabele om de uitvoer te beperken tot klanten uit de opgegeven regio. De For Each lus geeft de bedrijfsnaam weer voor elke klant in het queryresultaat.
Sub DisplayCustomersForRegion(ByVal customers As List(Of Customer),
ByVal region As String)
Dim customersForRegion = From cust In customers
Where cust.Region = region
For Each cust In customersForRegion
Console.WriteLine(cust.CompanyName)
Next
End Sub
Zie ook
- Opvragen
- Inleiding tot LINQ in Visual Basic
- Voor elke... Volgende instructie
- Voor...Volgende-statement
- Select-clausule
- Where-clausule
- Geaggregeerde Clausule
- Distincte Clausule
- Join-clause
- Groepsdeelnamecomponent
- Order by-clausule
- Let-component
- Clausule overslaan
- Take-clausule
- Overslaan While-clausule
- Neem Terwijl Clausule