我组成一个小组并获取子列表...... 在查询期间,我用
创建一个新的objvar result3 = from tick in listTicks
group tick by bla bla into g
select new
{
Count = g.Count(),
Key = g.Key,
Items = g,
Timestamp = g.First().timestamp,
LastTimestamp = g[-1].First().timestamp result3 isn't still declared???
};
我想在运行时期间访问上次创建的obj的select new on值 也许检查最后的first.Timestamp是否具有特定值
是否可以在创建select new {}期间访问最后一个g 我想用最后一个g
中的一个来检查实际值我认为像result3 [result.count - 1] .timestamp ???在选择新部分......
答案 0 :(得分:1)
我不应该理解正确,但这是你想要的吗?
result3.Last().Timestamp;
评论后:我想我现在明白了。 您需要创建一个临时变量来存储最后一个组的时间戳,并将其值设置为更复杂的委托:
int lastTimestamp = 0; // Put the correct type and default value
var result3 = (from tick in listTicks
group tick by bla bla into g
select g)
.Select
(g =>
{
// Create your object with the last timestamp
var result = new
{
Count = g.Count(),
Key = g.Key,
Items = g,
Timestamp = g.First().timestamp,
LastTimestamp = lastTimestamp
};
// Set last timestamp for next iteration
lastTimestamp = result.Timestamp;
// Return your object
return result;
});
不知道确切的上下文,但您可能希望添加“ToList()”以覆盖延迟提取。