当我尝试将源过滤器添加到我的SearchRequest
我收到错误
非泛型类型“字段”不能与类型参数一起使用
上Fields
。这是代码片段:
var request = new SearchRequest<ElasticSearchJsonObject.Rootobject>(Nest.Indices.Index("myindex"), Types.All)
{
From = 0,
Size = 10,
Query = query,
Source = new SourceFilter
{
Includes = "*",
Excludes = Fields<ElasticSearchJsonObject.Rootobject>(p => p.footer)
}
};
即使我Fields("footer")
直接尝试,错误也会出现在排除字段中。这是文档建议的方式。
我使用的是 Elastic Search 6.0.2 和 NEST 6.0.1。
对于Fields
,它支持多种类型的隐式转换,包括
Infer.Fields 例如
Nest.Infer.Fields<ElasticSearchJsonObject.Rootobject>(p => p.footer)
字符串例如
"footer"
System.Reflection.PropertyInfo 例如
typeof(ElasticSearchJsonObject.Rootobject).GetProperty("footer")
它本质上是一个Field
支持多个字段的版本。查看有关Field
推理的文档。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句