c# - 如何对 Any() 进行否定
问题描述
给定以下课程
class Order {
List<Task> Tasks;
}
class Task {
List<TaskDetail> TaskDetails;
}
class TaskDetail {
bool ThisDetailFinishesTheTask;
}
我怎样才能获得至少有一个没有 TaskDetail 的任务的所有订单ThisDetailFinishesTheTask
?
我尝试了以下方法,但它与我需要的“相反”:
Iqueryable<Order> Orders = dbcontext.Orders;
Orders.Where(o => o.Tasks.Any(t => t.TaskDetails.Any(td => td.ThisDetailFinishesTheTask)));
Orders.Load();
我想我很接近,但我只是没有看到它......
解决方案
您不能!
将任何“”输出或与 false 进行比较,类似于您与 true 进行比较的方式。
Iqueryable<Order> Orders = dbcontext.Orders;
Orders.Where(o => o.Tasks.Any(t => !t.TaskDetails.Any(td => td.ThisDetailFinishesTheTask == true)));
Orders.Load();
推荐阅读
- java - Java 在框架外单击(使用机器人)
- python - 如何在 Pillow 中获取照片的总尺寸?
- docker - 无法从 Mosquitto 泊坞窗外部连接
- php - 在 WooCommerce 中自动生成简单或可变的产品描述
- javascript - Webpack 5字体资产问题,没有错误但也没有字体
- python - 使用来自外循环迭代器的值更新特定键的字典值
- attributes - 处理器属性/属性不可访问
- java - 将阶段变量注入我的 API Gateway body-mapping-template
- javascript - 必须单击两次才能使 jquery 使用显示/隐藏正确运行
- python - 如何忽略 discord.py 中的 ctx 参数?