Solución para las consultas N1QL* en el SDK .NET

Este blog se publicó originalmente en el blog personal de David Ostrovsky. Para ver la entrada original, haga clic en aquí

TL;DR: SELECT myBucket.* FROM myBucket

Un cambio en la forma en que N1QL devuelve los resultados de las consultas estrella en Couchbase Server 4.1 parece haber roto la forma en que el SDK .NET deserializa los resultados devueltos. Esto causa que el Consulta para devolver el número correcto de resultados, pero con todas las propiedades en su valor por defecto. La razón es que una consulta como SELECT * FROM por defecto por defecto produce ahora el siguiente resultado JSON:

Como puede ver, cada documento se devuelve como una propiedad bajo el nombre del bucket, mientras que la implementación .NET SDK espera los resultados como solían ser en las versiones anteriores de N1QL, como un array de cuerpos de documentos JSON:

Por suerte, podemos solucionarlo fácilmente seleccionando el contenido del campo por defectoen lugar de * en nuestra consulta, así: SELECT default.* FROM default que ahora devolverá los resultados en el formato que espera el SDK de .NET.

Pruébelo y compruebe que el Consulta devuelve ahora objetos con todos los valores correctamente deserializados.

Comparte este artículo
Recibe actualizaciones del blog de Couchbase en tu bandeja de entrada
Este campo es obligatorio.

Autor

Publicado por David Ostrovsky, Arquitecto jefe de soluciones, Couchbase

David Ostrovsky es Arquitecto Senior de Soluciones en Couchbase. Como arquitecto de soluciones, David trabajó con clientes existentes y potenciales de Couchbase para diseñar, implementar y dar soporte a despliegues de Couchbase Server.

Deja un comentario

¿Listo para empezar con Couchbase Capella?

Empezar a construir

Consulte nuestro portal para desarrolladores para explorar NoSQL, buscar recursos y empezar con tutoriales.

Utilizar Capella gratis

Ponte manos a la obra con Couchbase en unos pocos clics. Capella DBaaS es la forma más fácil y rápida de empezar.

Póngase en contacto

¿Quieres saber más sobre las ofertas de Couchbase? Permítanos ayudarle.