NEST没有索引

时间:2014-01-29 18:01:13

标签: c# elasticsearch nest

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

我抓住了NEST的最新NuGet,然后尝试序列化并向索引添加内容。这是我正在使用的方法的片段

        var localhost = new Uri("http://localhost/9200");
        var setting = new ConnectionSettings(localhost).SetDefaultIndex("cpi_catalog");
        var client = new ElasticClient(setting);
        client.MapFromAttributes<Item>();
        var testitem = new Item()
        {
            Description = "test",
            Id = 9999999,
            Manufacturer_Id = 5,
            Quantity_Per_Unit = 1,
            Quantity_Unit_Id = "EA",
            SKU = "AVE29845",
            Subtitle = "test",
            Title = "test"
        };
        var status = client.Index(testitem);

但是,似乎testitem从未编入索引,当我为/ cpi_catalog / items / 9999999执行GET时,我得到以下内容:

{"_index":"cpi_catalog","_type":"items","_id":"9999999","exists":false}

我在这里错过了什么看似简单的事情?

编辑:调试时,我会返回Nest.IndexResponse,除了NULL status.OK之外的所有字段false

1 个答案:

答案 0 :(得分:2)

似乎uri有一个错字:

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

应该是:

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