如何解决ElasticSearch:如何使用来自 Nest 7.11 的 ElasticClient 从字段中获取数据?
我正在使用 Elasticclient.Search 函数来获取字段的值。
问题是:
我在下面制作的代码使映射正确,但为了搜索,它返回之前映射的字段的空值。
Main.cs
using nest;
using System;
using System.Linq;
using System.Threading;
namespace DataAccessConsole
{
class Program
{
public static Uri node;
public static ConnectionSettings settings;
public static Elasticclient client;
static void Main(string[] args)
{
{
node = new Uri("http://localhost:9200");
settings = new ConnectionSettings(node).DefaultIndex("getallcommissionspermanentes");
settings.DefaultFieldNameInferrer(p => p);
client = new Elasticclient(settings);
var indexSettings = new IndexSettings();
indexSettings.NumberOfReplicas = 1;
indexSettings.NumberOfShards = 1;
client.Indices.Create("getallcommissionspermanentes",index => index
.Map<GetAllCommissionsPermanentes>(
x => x
.AutoMap<GetAllCommissionsPermanentes>()
));
client.Search<GetAllCommissionsPermanentes>(s => s
.AllIndices()
);
}
}
GetAllCommissionsPermanentes.cs
表位于 Entityframework 的 edmx 模型中,数据来自 sql SERVER 数据库
public partial class GetAllCommissionsPermanentes
{
public int ID { get; set; }
public string NomAr { get; set; }
public string NomFr { get; set; }
}
如果您需要更多信息,请在下方发表评论。
谢谢
解决方法
代码是正确的但是'.All Indices()'在所有索引中搜索,不匹配模型的结果来了。此代码将返回更准确的结果;
client.Search<GetAllCommissionsPermanentes>(s => s.Index("getallcommissionspermanentes");
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。