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.
Filteren verwijst naar de werking van het beperken van de resultatenset om alleen de elementen te bevatten die voldoen aan een opgegeven voorwaarde. Het wordt ook wel genoemd selecteren van elementen die overeenkomen met de opgegeven voorwaarde.
Belangrijk
In deze voorbeelden wordt een System.Collections.Generic.IEnumerable<T> gegevensbron gebruikt. Gegevensbronnen gebaseerd op System.Linq.IQueryProvider maken gebruik van System.Linq.IQueryable<T> gegevensbronnen en expressiebomen. Expressiestructuren hebben beperkingen voor de toegestane C#-syntaxis. Bovendien kan elke IQueryProvider
gegevensbron, zoals EF Core , meer beperkingen opleggen. Raadpleeg de documentatie voor uw gegevensbron.
In de volgende afbeelding ziet u de resultaten van het filteren van een reeks tekens. Het predicaat voor de filterbewerking geeft aan dat het teken 'A' moet zijn.
De standaardqueryoperatormethoden die selectie uitvoeren, worden weergegeven in de volgende tabel:
Methodenaam | Beschrijving | Syntaxis van C#-queryexpressie | Meer informatie |
---|---|---|---|
OfType | Selecteert waarden, afhankelijk van de mogelijkheid om te casten naar een opgegeven type. | Niet van toepassing. | Enumerable.OfType Queryable.OfType |
Waar | Selecteert waarden die zijn gebaseerd op een predicaatfunctie. | where |
Enumerable.Where Queryable.Where |
In het volgende voorbeeld wordt de where
clausule gebruikt om te filteren uit een array die tekenreeksen met een specifieke lengte heeft.
Opmerking
Raadpleeg voor meer informatie over de algemene gegevensbronnen voor deze context het artikel Overzicht van Standard-queryoperators.
string[] words = ["the", "quick", "brown", "fox", "jumps"];
IEnumerable<string> query = from word in words
where word.Length == 3
select word;
foreach (string str in query)
{
Console.WriteLine(str);
}
/* This code produces the following output:
the
fox
*/
De equivalente query met behulp van de methodesyntaxis wordt weergegeven in de volgende code:
string[] words = ["the", "quick", "brown", "fox", "jumps"];
IEnumerable<string> query =
words.Where(word => word.Length == 3);
foreach (string str in query)
{
Console.WriteLine(str);
}
/* This code produces the following output:
the
fox
*/