আপনার সম্পত্তি 'অর্ডার' ক্ষেত্রে আপনি যে ধরণের পছন্দগুলি বেছে নিচ্ছেন সে সম্পর্কে সুনির্দিষ্টভাবে সম্পত্তি বৈশিষ্ট্য সম্পর্কে আরও সাধারণ কিছু করতে পারেন:
জেনেরিক হিসাবে আপনার ফাংশন লিখুন:
public List<Order> GetOrderList<T>(IEnumerable<Order> orders, Func<Order, T> propertySelector)
{
return (from order in orders
orderby propertySelector(order)
select order).ToList();
}
এবং তারপরে এটি ব্যবহার করুন:
var ordersOrderedByDate = GetOrderList(orders, x => x.OrderDate);
আপনি আরও জেনেরিক হতে পারেন এবং আপনি যেটি অর্ডার করতে চান তার জন্য একটি খোলার ধরণ নির্ধারণ করতে পারেন:
public List<T> OrderBy<T,P>(IEnumerable<T> collection, Func<T,P> propertySelector)
{
return (from item in collection
orderby propertySelector(item)
select item).ToList();
}
এবং এটি একইভাবে ব্যবহার করুন:
var ordersOrderedByDate = OrderBy(orders, x => x.OrderDate);
লিনকিউ স্টাইলের 'অর্ডারবাই' করার কোনটি বোকা অপ্রয়োজনীয় জটিল উপায়, তবে এটি কীভাবে জেনেরিক উপায়ে প্রয়োগ করা যেতে পারে তার একটি ক্লু দেয় may