Like TakeWhile, the SkipWhile query operator uses a predicate to evaluate each element in the input sequence. SkipWhile will ignore items in the input sequence until the supplied predicate returns false.
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace LINQExample { class Program { static void Main(string[] args) { Ingredient[] ingredients = { new Ingredient { Name = "Sugar", Calories = 500 }, new Ingredient { Name = "Egg", Calories = 100 }, new Ingredient { Name = "Milk", Calories = 150 }, new Ingredient { Name = "Flour", Calories = 50 }, new Ingredient { Name = "Butter", Calories = 200 } }; IEnumerablequery = ingredients.SkipWhile(x => x.Name != "Milk"); foreach (var ingredient in query) { Console.WriteLine(ingredient.Name); } Console.ReadLine(); } } public class Ingredient { public string Name; public int Calories; } }
Output
Download Source Code