Запрос UUID-полей в Mongodb с помощью C # - PullRequest
1 голос
/ 05 сентября 2011

У меня есть несколько GUID, хранящихся в моей коллекции в MongoDb.Проблема в том, что я не могу запросить их, используя простые

Query.EQ("GuidField", Guid)

Они хранятся в порядке, но я не могу их искать.Как мне тогда запросить?

1 Ответ

2 голосов
/ 05 сентября 2011

Хм, попробуйте отладить следующий пример, чтобы убедиться, что он работает:

var _mongoServer = MongoServer.Create(
     MongoUrl.Create("mongodb://admin(admin):1@orsich-pc:27020"));

var database = _mongoServer.GetDatabase("StackoverflowExamples");
var collection = database.GetCollection("guids");

var guid = Guid.NewGuid();
var item = new Item()
   {
     Id = ObjectId.GenerateNewId().ToString(),
     GuidField = guid
   };

collection.Insert(item);

var itemFromDb = collection.FindOneAs<Item>(Query.EQ("GuidField", guid));

Класс элемента:

public class Item
{
  [BsonId]
  public string Id { get; set; }
  public Guid GuidField { get; set; }
}
...