C# RavenDb中的子列表中不包含
我有实体C# RavenDb中的子列表中不包含,c#,ravendb,C#,Ravendb,我有实体 class Something{ public List<string> Tags {get;set;} } 分类{ 公共列表标记{get;set;} } 现在我需要查询所有没有给定标记的实体 var res = s.Query<Something>() .Where(x => !x.Tags.Any(t => t == "Test3")); var res=s.Query() 其中(x=>!
class Something{
public List<string> Tags {get;set;}
}
分类{
公共列表标记{get;set;}
}
现在我需要查询所有没有给定标记的实体
var res = s.Query<Something>()
.Where(x => !x.Tags.Any(t => t == "Test3"));
var res=s.Query()
其中(x=>!x.Tags.Any(t=>t==“Test3”);
在以下情况下失败:
未处理的异常:
System.InvalidCastException:无法删除
类型的强制转换对象
'System.Linq.Expressions.MethodCallExpressionN'
打字
'System.Linq.Expressions.MemberExpression'
普通查询也不起作用:
var res = s.Advanced.LuceneQuery<Something>()
.Where("-Tags:Test3");
var res=s.Advanced.LuceneQuery()
其中(“-Tags:Test3”);
。。。它什么也不返回
如何编写这样的查询?解决方案很简单:
var res = s.Advanced.LuceneQuery<Something>()
.Where("Tags:(* -Test3)");
var res=s.Advanced.LuceneQuery()
其中(“标签:(*-Test3)”);
您可以使用一个In扩展方法,该方法也可以用于 没有lucene有办法做到这一点吗?