sql >> Databasteknik >  >> NoSQL >> MongoDB

Hämta data från mongodb med C#-drivrutinen

Jag antar att du bara behöver markera ditt blogg-ID med BsonId (och infoga id själv) attribut:

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

    public String Title{get;set;}
}

Och allt borde vara okej. Problemet berodde på att du inte markerat vilket fält som ska vara Mongodb _id och drivrutinsgenererat _id-fält med typen ObjectId. Och när föraren försöker deserialisera tillbaka den kan han inte konvertera ObjectId till String.

Komplett exempel:

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. hur man skapar indexet från mongoose i elastisk sökning i node,expressjs

  2. Kan inte använda Nested VariableOperators.mapItemsOf i Spring Data MongoDb

  3. AttributeError:'tuple'-objektet har inget attribut 'insert'

  4. MongoDB \uXXXX problem