MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Pobierz dane z mongodb za pomocą sterownika C#

Przypuszczam, że wystarczy oznaczyć swój identyfikator bloga za pomocą BsonId (i wstaw id samodzielnie) atrybut:

public class Blog
{
    [BsonId]
    public String Id {get;set;}

    public String Title{get;set;}
}

I wszystko powinno być w porządku. Problem polegał na tym, że nie zaznaczono, jakie pole będzie Mongodb _id, a wygenerowane przez sterownik pole _id o typie ObjectId. A kiedy kierowca próbuje zdeserializować go z powrotem, nie może przekonwertować ObjectId na String.

Pełny przykład:

MongoCollection collection = md.GetCollection<Blog>("blog");
var blog = new Blog(){Id = ObjectId.GenerateNewId().ToString(), 
                      Title = "First Blog"};
collection .Insert(blog);

MongoCursor<Blog> cursor = collection.FindAllAs<Blog>();
cursor.SetLimit(5);

var list = cursor.ToList();


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Zaktualizuj wiele wierszy warunkowo

  2. Pobieranie określonego klucza MongoDB z DuplicateKeyException, który został faktycznie zduplikowany (Java/Spring)

  3. Wygląda na to, że operator zapytania $expr nie działa z notacją z kropką w tablicy

  4. Jak używać C# do wstawiania dokumentu do istniejących dokumentów osadzonych?

  5. Jak zaktualizować każdą wartość za pomocą jednego zapytania w mongodb