亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Linq 多列分組問題

發布時間:2020-06-28 22:43:59 來源:網絡 閱讀:580 作者:guwei4037 欄目:編程語言

Linq 多列分組問題,是非常常見的需求。下面引用論壇某位壇友提出的問題:

    班級         課程   老師
A  高一班     英語   小王
B  高二班     英語   小王
C  高一班     英語   小張

結果:

    班級         課程   老師
A  高一班     英語   小王
C  高一班     英語   小張


經過分析可以看出,根據課程和老師進行分組,重復的取第一行的數據。傳統的方法可能要寫很多代碼,而用Lambda或者Linq只需要幾行代碼就能實現。

完整代碼如下:

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            Data[] data = new Data[] 
            { 
                new Data(){班級="高一班", 課程="英語", 老師="小王"},
                new Data(){班級="高二班", 課程="英語", 老師="小王"},
                new Data(){班級="高一班", 課程="英語", 老師="小張"},
                new Data(){班級="高一班", 課程="英語", 老師="小張"},
            };

            //方式1:Lambda
            var resultLambda = data.GroupBy(x => new { 課程 = x.課程, 老師 = x.老師 }).Select(x => x.FirstOrDefault());
            resultLambda.ToList().ForEach(x => Console.WriteLine(string.Join(",", x.班級, x.課程, x.老師)));

            //方式2:Linq
            var resultLinq = from p in data
                             group p by new { p.課程, p.老師 } into g
                             select new
                             {
                                 班級 = g.FirstOrDefault().班級,
                                 課程 = g.Key.課程,
                                 老師 = g.Key.老師,
                             };
            resultLinq.ToList().ForEach(x => Console.WriteLine(string.Join(",", x.班級, x.課程, x.老師)));
        }
    }

    public class Data
    {
        public string 班級 { get; set; }
        public string 課程 { get; set; }
        public string 老師 { get; set; }
    }
}
向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

湖北省| 从江县| 馆陶县| 城固县| 社旗县| 云南省| 金阳县| 长沙市| 右玉县| 洛阳市| 社会| 叶城县| 葫芦岛市| 阳朔县| 枣阳市| 香河县| 济南市| 滕州市| 兰溪市| 青川县| 莒南县| 宿松县| 公安县| 闽清县| 芒康县| 岳西县| 衢州市| 迁安市| 鄂托克前旗| 武胜县| 比如县| 鄂温| 洪洞县| 涪陵区| 尼勒克县| 大同县| 大城县| 方城县| 新余市| 定陶县| 南陵县|