Linq自定義排序的寫法(方法一)


第一步:

需要編寫一個obiect方法用於轉換:

        #region linq自定義排序方法
        public static object GetPropertyValue(object obj, string property)
        {
            System.Reflection.PropertyInfo propertyInfo = obj.GetType().GetProperty(property);
            return propertyInfo.GetValue(obj, null);
        }
        #endregion

第二步運用:

var sortField1s="CompanyName";
if (SortField == "desc")
{
    list_Subject = list_Subject.OrderByDescending(r => GetPropertyValue(r, "CompanyName")).Skip(PageSize * PageIndex).Take(PageSize).ToList();
   //優化:list_Subject = list_Subject.OrderByDescending(r => GetPropertyValue(sortField1s)).Skip(PageSize * PageIndex).Take(PageSize).ToList();
} 
else
{
list_Subject = list_Subject.OrderBy(r => GetPropertyValue(r,"CompanyName")).Skip(PageSize * PageIndex).Take(PageSize).ToList(); }

 

list_Subject:是你要進行排序的集合;


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM