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

Json.NET +MongoDBBsonを一緒にうまくプレイする

    はい、JObject間の変換を明示的に実装する必要があります およびBsonDocument タイプ。独自のコンバーターを実装し、属性を使用して、C#タイプの構造をトラバースしないようにすることができます。試してみてください:

    public class Detail
    {
        [BsonSerializer(typeof(DynamicSerializer))]
        public dynamic Value { get; set; }
    }
    
    public class DynamicSerializer : SerializerBase<dynamic>
    {
        public override dynamic Deserialize(BsonDeserializationContext context, BsonDeserializationArgs args)
        {
            var myBSONDoc = BsonDocumentSerializer.Instance.Deserialize(context);
            return (dynamic)JObject.Parse(context.ToString());
        }
    
        public override void Serialize(BsonSerializationContext context, BsonSerializationArgs args, dynamic value)
        {
            var bson = MongoDB.Bson.BsonDocument.Parse(value.ToString());
            BsonDocumentSerializer.Instance.Serialize(context, args, bson);
        }
    }
    



    1. MongoDBキャッシュシステムを理解する

    2. 1つのRedisLuaスクリプトで複数のDBを使用しますか?

    3. Connect-mongoセッションが自動的に削除されない

    4. モンゴドット表記のあいまいさ