我如何可以排序列表通用的LINQ? [英] How can i sort Generic list with Linq?

查看:129
本文介绍了我如何可以排序列表通用的LINQ?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何排序myScriptCellsCount.MyCellsCharactersCount(名单的int类型)的LINQ

 公共类MyExcelSheetsCells
    {
        公开名单的MyCellsCharactersCount {获得;组; }

        公共MyExcelSheetsCells()
        {
            MyCellsCharactersCount =新的List 的();
        }

    }  

 无效ArrangedDataList(数据表dTable)
        {
            DAL.MyExcelSheets myexcelSheet =新DAL.MyExcelSheets();
            myScriptCellsCount =新TestExceltoSql.DAL.MyExcelSheetsCells();

            的foreach(COL的DataColumn在dTable.Columns)
                myexcelSheet.MyColumnNames.Add(col.ColumnName.ToString());
            的foreach(DataColumn的DC IN dTable.Columns)
            的foreach(在dTable.Rows的DataRow博士)
                myScriptCellsCount.MyCellsCharactersCount.Add(DR [DC]的ToString()的长度。);
          //我怎么可以排序倒序
            //myScriptCellsCount.MyCellsCharactersCount =从列表中myScriptCellsCount.MyCellsCharactersCount
            //排序依据list.CompareTo(降序
            //选择列表;
            CreatSqlTable(myexcelSheet.MyColumnNames,dTable.TableName,myScriptCellsCount.MyCellsCharactersCount [0]的ToString());
            myscript.WriteScript(myscript.SqlScripts);
        }  

解决方案

  //使用LINQ
MyCellsCharactersCount.OrderBy(X =&X的催化剂); //上升
MyCellsCharactersCount.OrderByDescending(X =&X的催化剂); //下降
 

  //不使用LINQ
MyCellsCharactersCount.Sort(); //上升
MyCellsCharactersCount.Sort()反向()。 //下降
 

How can i sort myScriptCellsCount.MyCellsCharactersCount (list int type) in linq

    public class MyExcelSheetsCells
    {
        public List<int> MyCellsCharactersCount { get; set; }

        public MyExcelSheetsCells()
        {
            MyCellsCharactersCount = new List<int>();
        }

    }

   void ArrangedDataList(DataTable dTable)
        {
            DAL.MyExcelSheets myexcelSheet = new DAL.MyExcelSheets();
            myScriptCellsCount = new TestExceltoSql.DAL.MyExcelSheetsCells();

            foreach (DataColumn col in dTable.Columns)
                myexcelSheet.MyColumnNames.Add(col.ColumnName.ToString());
            foreach(DataColumn dc in dTable.Columns)
            foreach (DataRow  dr in dTable.Rows)
                myScriptCellsCount.MyCellsCharactersCount.Add(dr[dc].ToString().Length);
          //How can i sort desc
            //myScriptCellsCount.MyCellsCharactersCount = from list in myScriptCellsCount.MyCellsCharactersCount
            //                                            orderby list.CompareTo( descending
            //                                            select list;
            CreatSqlTable(myexcelSheet.MyColumnNames, dTable.TableName, myScriptCellsCount.MyCellsCharactersCount[0].ToString());
            myscript.WriteScript(myscript.SqlScripts);
        }

解决方案

// using Linq
MyCellsCharactersCount.OrderBy(x => x);            // ascending
MyCellsCharactersCount.OrderByDescending(x => x);  // descending

or

// not using Linq
MyCellsCharactersCount.Sort();                     // ascending
MyCellsCharactersCount.Sort().Reverse();           // descending

这篇关于我如何可以排序列表通用的LINQ?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆