sql >> データベース >  >> NoSQL >> MongoDB

C#ドライバーを使用してmongodbからデータを取得する

    ブログIDにBsonIdのマークを付けるだけでよいと思います。 (そして自分でIDを挿入)属性:

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

    そして、すべてが大丈夫なはずです。問題は、どのフィールドがMongodb _idになり、ドライバーがObjectIdタイプの_idフィールドになるかをマークしなかったためです。また、ドライバーが逆シリアル化しようとすると、ObjectIdをStringに変換できません。

    完全な例:

    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. FindIterable <Document>はすべてのドキュメントをロードしますか?

    2. PHP MongoDBは、$ in/$またはを使用して複数のドキュメントを更新します

    3. Hadoop MapReduceのInputSplitとは何ですか?

    4. エラー10068で失敗しました:無効な演算子:$ oid