Elasticsearch выбросить Elasticsearch.Net.UnexpectedElasticsearchClientException - PullRequest
0 голосов
/ 15 мая 2019

У меня проблема с Elasticsearch.Net.UnexpectedElasticsearchClientException:

Я попытался изменить версию гнезда (например: 5.xxx, 2.xxx, 6.xxx) и не могу решить эту проблему, я не могу найти 7.xxx в nuget, так что я должен попробовать еще раз, чтобы это исправить?

Исключение составляет:

Невозможно десериализовать текущий объект JSON (например, {"name": "value"}) в тип 'System.Int64', поскольку тип требует примитив JSON.значение (например, строка, число, логическое значение, ноль) для правильной десериализации.Чтобы исправить эту ошибку, либо измените JSON на примитивное значение JSON (например, string, number, boolean, null) или измените десериализованный тип так, чтобы это был нормальный тип .NET (например, не примитивный тип, такой как целое число, а не тип коллекции).как массив или список), который может быть десериализован из объекта JSON.JsonObjectAttribute также можно добавить к типу, чтобы заставить его десериализоваться из объекта JSON.Путь «hit.total.value», строка 1, позиция 115 ».

var settings = new ConnectionSettings(new Uri("http://localhost:9200")).DefaultIndex("my-application");
        var client = new ElasticClient(settings);

        IEnumerable<Person> persons = new List<Person>
        {
            new Person()
            {
                Id = "4",
                Firstname = "aaa",//Boterhuis-040
                Lastname = "Gusto-040",
                Chains = new string[]{ "a","b","c" },
            },
            new Person()
            {
                Id = "5",
                Firstname = "sales@historichousehotels.com",
                Lastname = "t Boterhuis 1",
                Chains = new string[]{ "a","b","c" },
            },
            new Person()
            {
                Id = "6",
                Firstname = "Aberdeen #110",
                Lastname = "sales@historichousehotels.com",
                Chains = new string[]{ "a","b","c" },
            },
            new Person()
            {
                Id = "7",
                Firstname = "Aberdeen #110",
                Lastname = "t Boterhuis 2",
                Chains = new string[]{ "a","b","c" },
            },
             new Person()
            {
                Id = "8",
                Firstname = "Aberdeen #110",
                Lastname = "t Boterhuis 2",
                Chains = new string[]{ "a","b","c" },
            },
        };
        client.IndexMany<Person>(persons, "test");

        var rs = client.Search<Person>(s => s.Index("test"));
        var response = rs.Documents;
...