Questa è la mia prima domanda su questo sito Web, quindi cercherò di porre la domanda corretta.Indicizzazione di un documento mappato non mappato/dinamicamente con un geopoint nel client NEST elasticsearch
mentre si lavora con il client del nido elasticsearch uso l'indicizzazione di massa per archiviare i miei dati. Tutti i dati possono essere indicizzati con l'aiuto di un Dictionary<string, object>
. La società che lavoro per insiste sulla mappatura dinamica, il che significa che non sono autorizzato a dichiarare le variabili che vanno ai nodi.
Dictionary <string, object> document_value= new Dictionary<string, object>();
Bulkcontainer.Index<object>(i => i.Index(index_name).Type(_type).Id(_id).Document(document_value));
Questo non è stato un problema fino all'utilizzo dei punti GEO. se questi non sono indicizzati come geopunti non saranno ricercabili, quando inseriti nel dictonary verranno impostati come stringa. non sono in grado di scavalcarli. i dati per geopoint sono dati al codice sotto forma di un altro dictonary chiamato geofields.
PointGeoShape coord = new PointGeoShape();
Dictionary<string, PointGeoShape> geovalue = new Dictionary<string, PointGeoShape>();
if (geofields!= null)
{
foreach (KeyValuePair<string, object> geo in geofields)
{
string veldnaam = geo.Key.ToUpper();
string temp = geo.Value.ToString();
if (temp != "")
{
string[] array = temp.Split(new char[] { ',' }, 2);
List<double> list = new List<double>();
list.Add(double.Parse(array[0]));//lon
list.Add(double.Parse(array[1]));//lat
IEnumerable<double> latlon = list;
coord.Coordinates = latlon;
document_value.Add(veldnaam, coord);
}
}
}
alcun aiuto a chiarire il problema sarà apprezzato
ho cambiato il tipo di indice di
public class ES_DATA_GEO
{
public Dictionary<string, object> Data { get; set; }
[ElasticProperty(Type = Nest.FieldType.GeoShape)]
public GeoShape Locatiecoord { get; set; }
}
ma ora quando eseguo la query ancora doesnt registro Locatiecoord come Geo campo
Failed to find geo_shape field [locatiecoord]];
di nuovo qualsiasi aiuto è apprezzato
Ciao Roy, ne ho uno simile, nel caso lo abbia risolto, fammelo sapere, ho posto la mia domanda qui. http://stackoverflow.com/questions/33579086/unable-to-insert-dynamic-object-to-elastic-search-using-nest – cmrhema