我如何在LINQ中进行选择后进行选择

时间:2020-03-29 12:16:32

标签: c# linq

这是我的代码:

    var a = Times
            .Where(x => Int32.Parse(x.DateYYMMDD) > Int32.Parse("200309"))
            .GroupBy(x => x.DateYYMMDD)
            .OrderBy(g => g.Key)
            .Select(g => new ScreenTimeModel
            {
                DateYYMMDD = $"20{g.Key.Substring(0, 2)}/{g.Key.Substring(2, 2)}/{g.Key.Substring(4, 2)}"
            })
            .Select(g => new ScreenTimeModel
            {
                DateYYMMDD = (g => g.DateYYMMDD),
            })

它经过简化,但是我想对第一个.Select中的DateYYMMDD值进行一些处理。

我试图以此(g => g.DateYYMMDD)获取该数据,但是它不起作用。

有人可以告诉我在第一次选择中如何获得对DateYYMMDD的引用吗?

1 个答案:

答案 0 :(得分:1)

尝试删除第一个Select方法并稍作更新,以获取ScreenTimeModel,其中DateYYMMDD已分配给组密钥

 .Select(g => new ScreenTimeModel
        {
            DateYYMMDD = g.DateYYMMDD,
        }

在您当前的代码中,第一个Select获得IGrouping<TKey,TElement>作为g参数,第二个Select参数gScreenTimeModel。我认为您无需打两次电话