LINQ

176 阅读1分钟

First()和FirstOrDefault()

IEnumerable<SelectListItem> stores = database.Stores
        .Where(store => store.CompanyID == curCompany.ID)
        .Select(store => new SelectListItem { Value = store.Name, Text = store.ID });

bool has = list.Any(cus => cus.FirstName == "John");

image.png


OrderBy()

List<Order> SortedList = objListOrder.OrderBy(o=>o.OrderDate).ToList();

ForEach()

  • IEnumerable没有现成的ForEach(), IEnumerable需要自己实现,如下例所示:
items.ToList().ForEach(i => i.DoStuff());
public static void ForEach<T>(this IEnumerable<T> enumeration, Action<T> action)
{
    foreach(T item in enumeration)
    {
        action(item);
    }
}

  • List有现成的ForEach(),所以也可以IEnumerable转成List再调ForEach()

Select()

List<Model> newList = list.Where(m => m.application == "applicationname")
    .Select(m => new Model { 
        application = m.application, 
        users = m.users.Where(u => u.surname == "surname").ToList() 
    }).ToList();