2 votes

MongoDB C# filtre avec UUID (GUID) renvoie 0 résultat

J'ai une collection MongoDB "Posts" avec des données comme ceci:

{
 "_id": UUID('5fd671be-df7c-4dd2-87dc-9877a7fb1953'),
 "EditorId": UUID('f79fc0d8-0200-4eef-91c2-4062ee9a2354'),
"Name": "Name 01"
}

En C# j'ai essayé de récupérer tous les enregistrements pour un EditorId spécifique, j'ai essayé ceci:

BsonDefaults.GuidRepresentation = GuidRepresentation.Standard;

var postsCollection = _database.GetCollection("Posts");
var postsCollection2 = _database.GetCollection("Posts");

Guid editorId = ...

var postsDocs = postsCollection.Find(Builders.Filter.Eq("EditorId", editorObj.Id)).ToList();
var posts = postsCollection2.Find(p => p.EditorId == editorObj.Id).ToList();

Mais aucun de ces moyens ne fonctionne, je n'obtiens aucun résultat! Avez-vous une idée du problème et comment le résoudre?

Merci

1voto

ClubberLang Points 1053

J'ai trouvé une solution, je la poste, j'espère que cela aidera quelqu'un.

Le truc est d'ajouter

BsonDefaults.GuidRepresentation = GuidRepresentation.Standard;

AVANT de faire la connexion à la base de données, je faisais cela juste après!

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X