首页 > 解决方案 > Elasticserach NEST 客户端不会在搜索结果中绑定 _score 或 _id

问题描述

我正在使用 NEST 客户端在带有 .net 核心应用程序的弹性数据库中进行搜索。

一切正常,除了 the_id_scorefield 都没有绑定。

填写所有其他字段,例如时间戳。

我也尝试使用[Number (Name="_score")][Text(Name="_id")]属性,但字段始终为空/默认值

我错过了什么?

 public sealed class ElasticMapping
    {
        [Date(Name = "@timestamp")]
        public DateTime Timestamp { get; set; }

        [PropertyName("_id")]
        public string ElasticId { get; set; }

        [PropertyName("_score")]
        public Nullable<double> Score { get; set; }
    }

标签: .netelasticsearch.net-corenest

解决方案


这些字段不需要存在于您的文档中,它们是在弹性返回结果时被添加到命中的元文件。您可以设置断点并检查返回的结果,查看 hits 属性。


推荐阅读