Skip to content

Commit 462473f

Browse files
committed
fix #994 known strings should be read using ReadAsString() to prevent dates being parsed by json.net, ty @ashkandaie
1 parent ff2b6e4 commit 462473f

File tree

5 files changed

+231
-179
lines changed

5 files changed

+231
-179
lines changed

src/Nest/Resolvers/Converters/Aggregations/AggregationConverter.cs

+8-15
Original file line numberDiff line numberDiff line change
@@ -201,8 +201,7 @@ private IAggregation GetStatsAggregation(JsonReader reader, JsonSerializer seria
201201

202202
private IAggregation GetDateHistogramAggregation(JsonReader reader, JsonSerializer serializer)
203203
{
204-
reader.Read();
205-
var keyAsString = reader.Value as string;
204+
var keyAsString = reader.ReadAsString();
206205
reader.Read(); reader.Read();
207206
var key = (reader.Value as long?).GetValueOrDefault(0);
208207
reader.Read(); reader.Read();
@@ -217,21 +216,18 @@ private IAggregation GetDateHistogramAggregation(JsonReader reader, JsonSerializ
217216

218217
private IAggregation GetKeyedBucketItem(JsonReader reader, JsonSerializer serializer)
219218
{
220-
reader.Read();
221-
var key = reader.Value;
219+
var key = reader.ReadAsString();
222220
reader.Read();
223221
var property = reader.Value as string;
224222
if (property == "from" || property == "to")
225-
return GetRangeAggregation(reader, serializer, key.ToString());
226-
223+
return GetRangeAggregation(reader, serializer, key);
227224

228225
var keyItem = new KeyItem();
229-
keyItem.Key = key.ToString();
226+
keyItem.Key = key;
230227

231228
if (property == "key_as_string")
232229
{
233-
reader.Read();
234-
keyItem.KeyAsString = reader.Value.ToString();
230+
keyItem.KeyAsString = reader.ReadAsString();
235231
reader.Read();
236232
}
237233

@@ -407,18 +403,15 @@ public IAggregation GetRangeAggregation(JsonReader reader, JsonSerializer serial
407403
reader.Read();
408404
break;
409405
case "key":
410-
reader.Read();
411-
key = reader.Value as string;
406+
key = reader.ReadAsString();
412407
reader.Read();
413408
break;
414409
case "from_as_string":
415-
reader.Read();
416-
fromAsString = reader.Value as string;
410+
fromAsString = reader.ReadAsString();
417411
reader.Read();
418412
break;
419413
case "to_as_string":
420-
reader.Read();
421-
toAsString = reader.Value as string;
414+
toAsString = reader.ReadAsString();
422415
reader.Read();
423416
break;
424417
case "doc_count":

0 commit comments

Comments
 (0)