gpt4 book ai didi

c# - 在 2 个日期之间使用 Linq 计算对象列表

转载 作者:行者123 更新时间:2023-11-30 20:01:07 25 4
gpt4 key购买 nike

我正在尝试对列表中的对象进行计数。我的代码如下所示:

var count = tempMessages
.Where(MessageDate => MessageDate > DateTime.Now.AddSeconds(-6))
.Count();

如您所见,我正在尝试对 MessageDate 最多 6 秒的消息进行计数。但我收到此错误消息:

Operator '>' cannot be applied to operands of type 'ChatProj.Models.Message' and 'System.DateTime'

最佳答案

tempMessages 是自定义类 Message 的可枚举,Where 类会将其作为表达式的参数,因此您需要访问其中的日期属性:

Count 上还有一个重载,它可以采用表达式来保存执行 Where: http://msdn.microsoft.com/en-us/library/bb535181.aspx

var checkDate = DateTime.Now.AddSeconds(-6);

var count = tempMessages
.Count(message => message.Date > checkDate);

错误消息突出显示了这一点,您试图说“我的消息是否大于此日期”,而不是“此消息的日期是否大于此日期”。

关于c# - 在 2 个日期之间使用 Linq 计算对象列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19490804/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com