为列表列表编写此 C# 代码的更好方法

我有 3 个数据库表,其中包含具有日期属性的记录。我的目标是从 3 个表中的每一个中检索所有日期并将它们放入一个不同的列表中。我目前正在这样做,并且正在运行:


var allYears = new List<List<int>>();

var lstTableOneYears = db.TableOne.Select(x => x.DateTakenRT.Year).Distinct().ToList();

var lstTableTwoYears = db.TableTwo.Select(x => x.DateTakenPIC.Year).Distinct().ToList();

var lstTableThreeYears = db.TableThree.Select(x => x.DateTakenMT.Year).Distinct().ToList();


allYears.Add(lstTableOneYears);

allYears.Add(lstTableTwoYears);

allYears.Add(lstTableThreeYears);


var distinctYears = allYears.SelectMany(x => x).Distinct().ToList();

以上是有效的,但我希望有更好的方法来使用更少的行来编写它?也许更好地使用 LINQ?


任何帮助或建议表示赞赏。


浮云间
浏览 112回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP