Below is a sample source code demonstrating the usage of the SelectMany method in LINQ and C#. One of the usage of the SelectMany is to return the flat list an avoid returning the lists of lists.
SelectMany Example in LINQ and C#
using System; using System.Collections.Generic; using System.Data; using System.Linq; namespace AbundantCode { internal class Program { //SelectMany Example in LINQ and C# private static void Main(string[] args) { List<CodeSnippet> snippets = new List<CodeSnippet>() { new CodeSnippet { Code = "1" , Name = "Abundantcode1"}, new CodeSnippet { Code = "2" , Name = "Abundantcode2"}, new CodeSnippet { Code = "3" , Name = "Abundantcode1"}, new CodeSnippet { Code = "4" , Name = "Abundantcode2"}, new CodeSnippet { Code = "5" , Name = "Abundantcode4"} }; List<Language> languages = new List<Language>() { new Language { SampleSnippet = snippets.Where(a=>a.Name=="Abundantcode1").ToList()}, new Language { SampleSnippet = snippets.Where(a=>a.Name=="Abundantcode2").ToList()} }; IEnumerable<CodeSnippet> CodeSnippets = languages.SelectMany(p => p.SampleSnippet); foreach (var item in CodeSnippets) Console.WriteLine(item.Name); Console.ReadLine(); } } public class CodeSnippet { public string Name { get; set; } public string Code { get; set; } } public class Language { public List<CodeSnippet> SampleSnippet { get; set; } } }
Leave a Reply