【发布时间】:2019-02-26 20:05:27
【问题描述】:
在我的索引中,我有吸引力类型的文档,它们有一个属性,它是一个报价列表。这些优惠有一个到期日。每个景点可以有多个优惠,一个景点可以有一个已过期和一个未过期的优惠。我想要做的是当我查询并取回我的结果时,不会在景点中显示任何过期的优惠。我的源描述符如下所示:
.Source(src => src.IncludeAll().Excludes(f => f.Fields(d => d.Offers.Where(df => df.Expires > DateTime.Now)))
在生成的查询部分我可以看到以下内容:
{ "includes": [ "*" ], "excludes": [ "offers.now.expires"] }
我仍然看到给定景点的已过期优惠已过期且未过期。甚至可以有条件地过滤源描述符中的字段吗?
我也试过了:
.Source(src => src.IncludeAll().Excludes(f => f.Fields(d => d.Offers.First().Expires > DateTime.Now))
输出相同,结果相同,我仍然在返回的景点文档中得到过期的优惠
【问题讨论】:
标签: c# elasticsearch nest