这是我的代码:
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的引用吗?
答案 0 :(得分:1)
尝试删除第一个Select
方法并稍作更新,以获取ScreenTimeModel
,其中DateYYMMDD
已分配给组密钥
.Select(g => new ScreenTimeModel
{
DateYYMMDD = g.DateYYMMDD,
}
在您当前的代码中,第一个Select
获得IGrouping<TKey,TElement>
作为g
参数,第二个Select
参数g
是ScreenTimeModel
。我认为您无需打两次电话