using System.Collections.Generic;
public static void Main()
var product1 = new Product() { Name = "C# Eval Expression", Url = "https://eval-expression.net/" };
var product2 = new Product() { Name = "Dapper Plus", Url = "https://dapper-plus.net/" };
var product3 = new Product() { Name = "Entity Framework Extensions", Url = "https://entityframework-extensions.net/" };
var product4 = new Product() { Name = ".NET Fiddle", Url = "https://dotnetfiddle.net/" };
var product5 = new Product() { Name = "SQL Fiddle", Url = "https://sqlfiddle.com/" };
var product6 = new Product() { Name = "ZZZ Code AI", Url = "https://zzzcode.ai/" };
var catalog1 = new Catalog() { Type = "Paid", Products = new List<Product>() { product1, product2, product3 }};
var catalog2 = new Catalog() { Type = "Free", Products = new List<Product>() { product4, product5, product6 }};
var catalogs = new List<Catalog>() { catalog1, catalog2 };
var products = catalogs.SelectManyDynamic("x => x.Products").ToList();
FiddleHelper.WriteTable("1 - products:", products);
public string Type { get; set; }
public List<Product> Products { get; set; }
public string Name { get; set; }
public string Url { get; set; }