Skip to content

HandleNestTypesOnSourceJsonConverter does not serialize/deserialize Nest.DateRange #3778

@yquestion

Description

@yquestion

NEST/Elasticsearch.Net version: 6.5.1

Elasticsearch version: 6.x

Description of the problem including expected versus actual behavior:

Steps to reproduce:

  1. Source code

DateTimeOffset? startDate1 =
Convert.ToDateTime("2019/01/01").Date;

        DateTimeOffset? endDate1 =
            Convert.ToDateTime("2019/04/01").Date;

        var dt = new DateRange() { GreaterThanOrEqualTo = startDate1, LessThanOrEqualTo = endDate1 };

        var settings = new JsonSerializerSettings();
        settings.Converters.Add(new Nest.JsonNetSerializer.Converters.HandleNestTypesOnSourceJsonConverter(ElasticClient.RequestResponseSerializer));

        var json01 = Newtonsoft.Json.JsonConvert.SerializeObject(dt, Formatting.Indented, settings);

json01 is
{
"GreaterThan": null,
"GreaterThanOrEqualTo": "2019-01-01T00:00:00-06:00",
"LessThan": null,
"LessThanOrEqualTo": "2019-04-01T00:00:00-05:00"
}

expected it to be
{
"gt": null,
"fte": "2019-01-01T00:00:00-06:00",
"lt": null,
"lte": "2019-04-01T00:00:00-05:00"
}
3. For deserialization,

string inputString =
"{"gt": null,"gte": "2019-01-01T00:00:00-06:00","lt": null,"lte": "2019-04-01T00:00:00-05:00"}";
var back01 = Newtonsoft.Json.JsonConvert.DeserializeObject(inputString, settings);

back01 is empty.

Provide ConnectionSettings (if relevant):

Provide DebugInformation (if relevant):

Describe the feature:

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions