List Sort With Lambda Expression : Lambda « LINQ « C# / CSharp Tutorial






using System.Text;
using System.Xml.Linq;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;

    class Product
    {
        public string Name { get; private set; }
        public decimal Price { get; private set; }

        public Product(string name, decimal price)
        {
            Name = name;
            Price = price;
        }

        Product()
        {
        }

        public static List<Product> GetSampleProducts()
        {
            return new List<Product>
            {
                new Product { Name="C", Price = 9.99m },
                new Product { Name="A", Price=14.99m },
                new Product { Name="F", Price=13.99m },
                new Product { Name="S", Price=10.99m}
            };
        }

        public override string ToString()
        {
            return string.Format("{0}: {1}", Name, Price);
        }
    }
    class ListSortWithLambdaExpression
    {
        static void Main()
        {
            List<Product> products = Product.GetSampleProducts();
            products.Sort(
                (first, second) => first.Name.CompareTo(second.Name)
            );
            foreach (Product product in products)
            {
                Console.WriteLine(product);
            }
        }
    }








22.2.Lambda
22.2.1.Lambda expression used to declare a delegate
22.2.2.If your query's lambda expressions reference local variables, these variables are subject to outer variable semantics.
22.2.3.Lambda expression used to declare an expression tree
22.2.4.return a lambda function
22.2.5.A local variable instantiated within a lambda expression is unique per invocation of the delegate instance.
22.2.6.square is assigned the lambda expression x = > x * x:
22.2.7.A lambda expression has the following BNF form: (parameters) => expression-or-statement-block
22.2.8.A lambda expression can reference the local variables and parameters of the method in which it's defined.
22.2.9.List Sort With Lambda Expression
22.2.10.Using Lambda Expressions with Find method
22.2.11.Concise Lambda Expression
22.2.12.Lambda Expression