এর উদ্দেশ্য AsQueryable()
ঠিক তাই আপনার চারপাশের একটি পাস করতে পারেন IEnumerable
পদ্ধতি আশা পারে IQueryable
, অথবা সেখানে প্রতিনিধিত্ব করতে একটি দরকারী কারণ নেই IEnumerable
যেমন IQueryable
? উদাহরণস্বরূপ, এটি কি এই জাতীয় কেসের জন্য থাকার কথা:
IEnumerable<Order> orders = orderRepo.GetAll();
// I don't want to create another method that works on IEnumerable,
// so I convert it here.
CountOrders(orders.AsQueryable());
public static int CountOrders(IQueryable<Order> ordersQuery)
{
return ordersQuery.Count();
}
বা এটি আসলে এটিকে কিছু আলাদা করে তোলে:
IEnumerable<Order> orders = orderRepo.GetAll();
IQueryable<Order> ordersQuery = orders.AsQueryable();
IEnumerable<Order> filteredOrders = orders.Where(o => o.CustomerId == 3);
IQueryable<Order> filteredOrdersQuery = ordersQuery.Where(o => o.CustomerId == 3);
// Are these executed in a different way?
int result1 = filteredOrders.Count();
int result2 = filteredOrdersQuery.Count();
কি IQueryable
এই এক্সটেনশন পদ্ধতি মাত্র একটি অভিব্যক্তি যে একই জিনিস করছেন শেষ পর্যন্ত একবার তার মৃত্যুদন্ড কার্যকর গড়তে সংস্করণ? আমার মূল প্রশ্নটি হ'ল ব্যবহারের ক্ষেত্রে আসল ব্যবহারের কেস AsQueryable
?