C# List 去重

來源:互聯網
上載者:User

標籤:

   List<Trademark_Category_Asso> list_Group = db.Select<Trademark_Category_Asso>(exp).Skip((operation.Page - 1) * operation.Limit).Take(operation.Limit).ToList();                List<Trademark_Category_AssoParams> list1 = new List<Trademark_Category_AssoParams>();                                                for (int i = 0; i < list_Group.Count; i++)                {                    for (int j = (i + 1); j < list_Group.Count; j++)                    {                        if (list_Group[j].ProductModelId == list_Group[i].ProductModelId && list_Group[j].CategoryId == list_Group[i].CategoryId)                        {                            list_Group.RemoveAt(j);//去除相同的項                            i = 0;//從新開始去重,如果數組內有大量重複的項,僅一次去重不能解決問題。這樣的用法會使效率慢1/3                            j = 0;                        }                                         }                }                            foreach (Trademark_Category_Asso a in list_Group)                {                    Trademark_Category_AssoParams param = new Trademark_Category_AssoParams();                                         TrademarkCP cp =                            db.Select<TrademarkCP>(s => s.CPTrademarkId == a.TrademarkCPId).FirstOrDefault();                        PartCP1 pcp = db.Select<PartCP1>(s => s.CPNameId == a.CategoryId).FirstOrDefault();                        PartCP cp1 = db.Select<PartCP>(s => s.CPTypeId == pcp.CPTypeID).FirstOrDefault();                        ProductModel pm = db.Select<ProductModel>(s => s.ModelId == a.ProductModelId).FirstOrDefault();                        param.BigCategoryId = cp1.CPTypeId;                        param.BigCategoryName = cp1.PartTypeName;                        param.CategoryId = pcp.CPNameId;                        param.CategoryName = pcp.PartName;                        param.ProductModelId = pm.ModelId;                        param.ProductModelName =pm.ModelName;                        param.TCAssoId = a.TCAssoId;                        param.TCNote = a.TCNote;                        param.TrademarkCPId = cp.CPTrademarkId;                        param.TrademarkCPName = cp.CPTrademarkName;                    list1.Add(param);                }

主要代碼:

  for (int i = 0; i < list_Group.Count; i++)                {                    for (int j = (i + 1); j < list_Group.Count; j++)                    {                        if (list_Group[j].ProductModelId == list_Group[i].ProductModelId && list_Group[j].CategoryId == list_Group[i].CategoryId)                        {                            list_Group.RemoveAt(j);//去除相同的項                            i = 0;//從新開始去重,如果數組內有大量重複的項,僅一次去重不能解決問題。這樣的用法會使效率慢1/3                            j = 0;                        }                                         }                }            

 

List Group 

                var t = db.Select<Trademark_Category_Asso>().GroupBy(s => new { s.CategoryId, s.ProductModelId });                foreach (var t1 in t)                {                    Console.WriteLine(t1.Key.CategoryId + " " + t1.Key.ProductModelId);                }

 

C# List 去重

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.