Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

656
Vistas
ElasticSearch NEST Buscar varios tipos y todos los campos

Al usar ElasticSearch NEST, tengo problemas para obtener los resultados esperados de mis consultas. Mi diseño de índice/tipo es el siguiente:

  • teatros (índice)
    • evento (tipos)
    • teatro
    • promoción
    • contenido genérico

Cada uno de esos tipos tiene sus propios campos, y estoy usando el método Index() de NEST para indexar los datos. Puedo verificar que está siendo indexado correctamente por:

  • Mirando http://localhost:9200/theatres/_mapping
  • Uso del complemento Head para ver datos

Como referencia, aquí está la configuración de mi cliente:

 // TODO: Put settings in config var node = new Uri("http://localhost:9200"); var connSettings = new ConnectionSettings(node); connSettings.SetDefaultIndex("theatres"); connSettings.ThrowOnElasticsearchServerExceptions(); var client = new ElasticClient(connSettings);

La consulta

Ahora, para la consulta, quiero buscar todos los tipos y todos los campos dentro del índice. Usando el complemento Head, puedo generar la consulta y obtener los resultados esperados:ingrese la descripción de la imagen aquí

Usando esa consulta que generó, probé la siguiente consulta NEST:

 var query = "waukesha"; // This would be passed in var resp = client.Search<dynamic>(s => s .From(0) .Take(10) .Query(qry => qry .Bool(b => b .Must(m => m .QueryString(qs => qs .DefaultField("_all") .Query(query))))));

Sin embargo, esto me da un resultado diferente. ¿NEST está haciendo algo tras bambalinas que no conozco? ¿O esto no es compatible?

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Falta su consulta .AllTypes()

También puede especificar varios tipos usando .Types("type1", "type1")

Asi que:

 var query = "waukesha"; // This would be passed in var resp = client.Search<dynamic>(s => s .AllTypes() .From(0) .Take(10) .Query(qry => qry .Bool(b => b .Must(m => m .QueryString(qs => qs .DefaultField("_all") .Query(query))))));
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda