Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of mappen te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen om mappen te wijzigen.
Deze refactoring is van toepassing op:
- C#
Wat: Hiermee kunt u eenvoudig uw foreach-lus die gebruikmaakt van een IEnumerable converteren naar een LINQ-query of een LINQ-aanroepformulier (ook wel een LINQ-methode genoemd).
Wanneer: U hebt een foreach-lus die gebruikmaakt van een IEnumerable, en u wilt dat die lus wordt gelezen als een LINQ-query.
Waarom: U gebruikt liever de LINQ-syntaxis in plaats van een foreach-lus. LINQ maakt van een query een eersteklas taalconstructie in C#. LINQ kan de hoeveelheid code in een bestand verminderen, de code leesbaarder maken en ervoor zorgen dat verschillende gegevensbronnen vergelijkbare query-expressiepatronen hebben.
Opmerking
De LINQ-syntaxis is doorgaans minder efficiƫnt dan een foreach-lus. Het is goed om op de hoogte te zijn van eventuele prestatienadelen die kunnen optreden wanneer u LINQ gebruikt om de leesbaarheid van uw code te verbeteren.
Converteer een foreach loop naar LINQ refactoring
Plaats de cursor in het
foreach
trefwoord.Druk op Ctrl+. om het menu Snelle acties en Refactorings te activeren.
Selecteer Converteren naar LINQ of Converteren naar Linq (belformulier).
Voorbeeldcode
using System.Collections.Generic;
public class Class1
{
public void MyMethod()
{
var greetings = new List<string>()
{ "hi", "yo", "hello", "howdy" };
IEnumerable<string> enumerable()
{
foreach (var greet in greetings)
{
if (greet.Length < 3)
{
yield return greet;
}
}
yield break;
}
}
}