private void ReadTerms(ITermsQuery termsQuery, JsonReader reader) { reader.Read(); if (reader.TokenType == JsonToken.StartObject) { var ef = new ExternalFieldDeclarationDescriptor <object>(); var depth = reader.Depth; while (reader.Read() && reader.Depth >= depth && reader.Value != null) { var property = reader.Value as string; switch (property) { case "id": reader.Read(); ef._Id = reader.Value as string; break; case "index": reader.Read(); ef._Index = reader.Value as string; break; case "type": reader.Read(); ef._Type = reader.Value as string; break; case "path": reader.Read(); ef._Path = reader.Value as string; break; } } termsQuery.ExternalField = ef; } else if (reader.TokenType == JsonToken.StartArray) { var values = JArray.Load(reader).Values <string>(); termsQuery.Terms = values; } }
private void ReadTerms(ITermsQuery termsQuery, JsonReader reader) { reader.Read(); if (reader.TokenType == JsonToken.StartObject) { var ef = new ExternalFieldDeclarationDescriptor<object>(); var depth = reader.Depth; while (reader.Read() && reader.Depth >= depth && reader.Value != null) { var property = reader.Value as string; switch (property) { case "id": reader.Read(); ef._Id = reader.Value as string; break; case "index": reader.Read(); ef._Index = reader.Value as string; break; case "type": reader.Read(); ef._Type = reader.Value as string; break; case "path": reader.Read(); ef._Path = reader.Value as string; break; } } termsQuery.ExternalField = ef; } else if (reader.TokenType == JsonToken.StartArray) { var values = JArray.Load(reader).Values<string>(); termsQuery.Terms = values; } }