我有一个需求,问题有很多标签,在查询时,需要筛选包含查询标签的一个集合(List<int>),以前的做法是先查询出来符合查询标签条件的标签id的结果集A,再查询问题时,加上判断是否包含该标签或者查询问题编号是否在结果集A中,这种方法实在是不得已之举。
今天经过不断试验,发现可以通过使用linq的except来实现一次性查询出结果。
···
集合.WhereIf(input.Tags != null && input.Tags.Count > 0, q => q.QuestionTags.LongCount()>=input.Tags.Count&& q.QuestionTags.Select(qt => qt.TagId).Except(input.Tags).LongCount()>=0)
···
需要注意的是,首先需要排除问题标签小于标签选择条件个数的记录,其次使用LongCount()>=0来满足问题拥有的标签个数大于选择条件的情况。最重要的是except的使用。

转载于:https://www.cnblogs.com/zinan/p/9378649.html

ef linq 中判断实体中是否包含某集合相关推荐

  1. java 判断 中文字符_java中判断字符串中是否有中文字符

    package com.meritit.test; public class TestChart { public static void main(String[] args) throws Exc ...

  2. python中判断字符串中出现次数最多的字母

    python中判断字符串中出现次数最多的字母 import string def check(text):text = text.lower()return max(string.ascii_lowe ...

  3. 3.js中判断数组中是否存在某个对象/值,判断数组里的对象是否存在某个值 的五种方法 及应用场景|判断数组里有没有某对象,有不添加,没有则添加到数组

    3.js中判断数组中是否存在某个对象/值,判断数组里的对象是否存在某个值 的五种方法 及应用场景 一.当数组中的数据是简单类型时: 应用js中的indexof方法:存在则返回当前项索引,不存在则返回 ...

  4. EF(Linq)框架使用过程中的小技巧汇总

    这篇博客总结本人在实际项目中遇到的一些关于EF或者Linq的问题,作为以后复习的笔记或者供后来人参考(遇到问题便更新). 目录 技巧1: DbFunctions.TruncateTime()的使用 技 ...

  5. java 字符串包含某个字符_java中判断字符串中是否包含某个特定字符串的方法有哪些...

    判断一个字符串是否包含某个子串的n种方法: 1.startsWith()方法 2.contains()方法 3.indexOf方法 startsWith()方法 这个方法有两个变体,用于检测字符串是否 ...

  6. Java 中判断一个字符串是否包含另外一个字符串的方法

    方法一:indexOf(String s) 可以配合indexOf(String s)的使用,如果包含,返回的值是包含该子字符串在父类字符串中起始位置:如果不包含必定全部返回值为-1 public v ...

  7. java中判断对象中某个属性是否为空

    问题:java对象接受从数据库查出来的数据时,对对象的某一属性进行操作,在操作属性中存储的数据中不对进行检查,会出现空指针异常的情况. 问题再现:新建一个实体类 public class Studen ...

  8. java字符串确定汉字_java中判断字符串中汉字的个数

    使用方法3与方法4时需要注意一些问题,代码中会有注释. 代码如下: package 包名; import java.util.ArrayList; import java.util.regex.Mat ...

  9. android 判断 string 是否是字母数字,Android中判断字符串中必须包含字母或者数字...

    public static boolean isLetterDigit(String str){ boolean isDigit = false;//定义一个boolean值,用来表示是否包含数字 b ...

最新文章

  1. VS2013中, 无法嵌入互操作类型“……”,请改用适用的接口的解决方法
  2. 周志华教授:关于深度学习的一点思考
  3. python线上编辑问题_大型线上项目中动态语言诸多问题之二 -- 以 Python 语言为例...
  4. ExtJs入门 (02)-布局面板
  5. .NET Core系列 :4 测试
  6. Envi IDL中多元线性回归计算方法
  7. 编程题【System类】计算一千万个数添加到集合的时间
  8. tensorboard ckpt pb 模型的输出节点_“技术需求”与“技术成果”项目之间关联度计算模型 TOP10 baseline...
  9. 信息学奥赛一本通(1218:取石子游戏)
  10. mysql中float、double、decimal的区别
  11. 安卓手机充电慢_很火的安卓手机充电特效设置
  12. 如何开发自己的股票软件103
  13. RC电路充放电时间的计算
  14. Redis Key(键) 命令使用
  15. html中怎样做成相册的效果,CSS相册简单实现方法(功能分析及代码)
  16. html乡愁代码,Homesick 乡愁
  17. 5G推动下,XR的需求“爆发”会来自B端还是C端?...
  18. 一文详解ARP报文格式及工作原理
  19. 几种for循环用法详解。
  20. 称硬币问题-Python

热门文章

  1. java1.8新增超实用Map方法——Map.getOrDefault()和Map.value()方法详解
  2. 2022-2028年中国加密货币交易所市场研究及前瞻分析报告
  3. 2022-2028年中国文化旅游业投资分析及前景预测报告(上中下卷)
  4. Python 高级特性 (1)- 闭包
  5. 八种基本类型的包装类你真的懂了?
  6. Linux 2 的 Windows 子系统上发布 CUDA
  7. 在OpenShift平台上验证NVIDIA DGX系统的分布式多节点自动驾驶AI训练
  8. 高效Tensor张量生成
  9. Python数据挖掘:绘制直方图,设置上下限和步长,绘制子图
  10. 你哪来这么多事(一):学生信息插入