elasticsearch,nest,C#,elasticsearch,Nest" /> elasticsearch,nest,C#,elasticsearch,Nest" />

C# 嵌套不索引

C# 嵌套不索引,c#,elasticsearch,nest,C#,elasticsearch,Nest,请原谅我,如果这是多余的,或者我错过了一些简单的东西,但我正在玩ElasticSearch(特别是NEST),看看它是否是我们b2b电子商务网站搜索功能的一个好补充 我抓取了NEST的最新NuGet,然后尝试序列化并向索引中添加一些内容。下面是我使用的方法的一个片段 var localhost=新Uri(“http://localhost/9200"); var设置=新连接设置(localhost).SetDefaultIndex(“cpi_目录”); var客户端=新的ElasticClien

请原谅我,如果这是多余的,或者我错过了一些简单的东西,但我正在玩ElasticSearch(特别是NEST),看看它是否是我们b2b电子商务网站搜索功能的一个好补充

我抓取了NEST的最新NuGet,然后尝试序列化并向索引中添加一些内容。下面是我使用的方法的一个片段

var localhost=新Uri(“http://localhost/9200");
var设置=新连接设置(localhost).SetDefaultIndex(“cpi_目录”);
var客户端=新的ElasticClient(设置);
client.MapFromAttributes();
var testitem=新项()
{
Description=“测试”,
Id=9999999,
制造商Id=5,
每单位数量=1,
数量单位\u Id=“EA”,
SKU=“AVE29845”,
Subtitle=“测试”,
Title=“测试”
};
var状态=客户索引(testitem);
然而,似乎testitem根本就没有索引,当我为/cpi_catalog/items/99999999执行GET时,我得到了以下结果:

{"_index":"cpi_catalog","_type":"items","_id":"9999999","exists":false}
我在这里错过了什么看似简单的东西


编辑:调试时,我返回一个
Nest.IndexResponse
,除了
状态之外,还有所有字段
NULL
。OK
false

似乎uri有输入错误:

var localhost = new Uri("http://localhost/9200");
应该是:

var localhost = new Uri("http://localhost:9200");

新Uri(“http://localhost/9200");
我认为/应该是
还要检查
testItem.Isvalid
以查看调用是否成功。我知道这将是一件愚蠢的事情,比如在冒号所在的地方放一个斜杠。谢谢Martijn,一切都安排好了。感谢大家对NEST的支持!