Skip to content

Latest commit

 

History

History
40 lines (34 loc) · 1.12 KB

README.md

File metadata and controls

40 lines (34 loc) · 1.12 KB

LinqDyn

Added three extension methods for linq

  • OrderBy - Has property name as input parameter
  • OrderByDescending - Has property name as input parameter
  • FilterBy - Has strongly typed input parameter

#Installation

You can install package from nuget: Install-Package LinqDyn

#Code Example

  public class ProductFilter
  {
      [FilterInfo(FilterOperator.Contains)]
      public string Name { get; set; }
      [FilterInfo(FilterOperator.GreaterOrEqual)]
      public int SortOrder { get; set; }
  }
  ProductFilter filter = new ProductFilter() { Name = "test", SortOrder = 5 };
  var result1 = list.FilterBy(filter);
  var result2 = list.Where(i => i.SortOrder >= filter.SortOrder)
                    .Where(i => i.Name.Contains(filter.Name));

In the above example result1 and result2 have same results.

  • list.OrderBy("SortOrder") returns same result as list.OrderBy(i => i.SortOrder)
  • list.OrderByDescending("SortOrder") returns same result as list.OrderByDescending(i => i.SortOrder)