c# - 使用 linq 显示今天和未来的日期
问题描述
所以我对 Linq 还是很陌生。我习惯于编写 SQL 查询,所以 Linq 对我来说有点困惑。
我正在尝试提取从今天开始的日期。
public List<Trails> GetTrails()
{
return _context.Trails.Include(p => p.TrailAttributes).Include(p => p.TrailReservations).ToList();
}
我试过做
public List<Trails> GetTrails()
{
return _context.Trails.Include(p => p.TrailAttributes).Include(p => p.TrailReservations).Where(p => p.TrailReservations >= Datetime.Now).ToList();
}
但是后来我遇到了一个问题,因为日期时间不适用于 ICollections
状态错误 CS0019 运算符“<=”不能应用于“ICollection”和“DateTime”类型的操作数
public ICollection<TrailReservations> TrailReservations { get; set; }
解决方案
您的问题是 TrailReservations 是一个集合,而不是日期时间的单个属性。您真正要求的是“给我所有未来至少有 1 个预订的路线”
假设您的 TrailReservations 实体具有某种 DateTime 属性(我们称之为 ReservationTime):
return _context.Trails.Include(p => p.TrailAttributes)
.Include(p => p.TrailReservations)
.Where(p => p.TrailReservations.Any(tr=>tr.ReservationTime >= Datetime.Now))
.ToList();
虽然Trails
此查询的结果将是即将到来的预订,但此查询将返回该跟踪的所有预订,即使它们是过去的。
推荐阅读
- node.js - Nginx 有时“连接到上游时连接()失败(111:连接被拒绝)”
- c - 自午夜以来的纳秒
- c++ - 你如何组合两个 char_t* 字符串?
- react-native - FlatList 滚动到顶部,而子组件中的 FlatList
- gnuplot - 将许多 .gp 文件传递给 gnuplot 与重复传递一个文件
- git - GitHub 中 HTTPS 和 SSH 的混淆
- java - 如何键入用户光标的位置
- android - 在 android 中从 WebView 外部控制 WebView 内容的缩放功能
- javascript - Javascript - 可以使用“import”关键字来导入 css 吗?
- javascript - 如何通过 JSON 代码运行循环以仅查找 javascript 中的特定字符串?