我可以将 Pocos 与 MongoDB C# 驱动程序一起使用吗?

本文关键字:一起 驱动程序 Pocos MongoDB 我可以 | 更新日期: 2023-09-27 17:56:47

我想知道我是否可以读写原始pocos到mongodb

驱动程序教程演示了如何一次将每个字段添加到 bson文档。bsonserialzer 能做到吗?

我可以自己写一些东西来反思一个对象,但我想知道它已经存在了。

使用动态扩展会很好

我可以将 Pocos 与 MongoDB C# 驱动程序一起使用吗?

是的,10gen官方C# MongoDB驱动程序支持POCO序列化和反序列化,例如

MongoCollection<Thing> thingCollection = _db.GetCollection<Thing>("things");
Thing thing = col.FindAllAs<Thing>();
col.Insert(new Thing { Name = "Foo" });

我认为你可以而且应该,10gen驱动程序POCO对象。您可以在完全独立的程序集中设计 POCO 模型,而无需引用 Mongo.Driver o Mongo.BSon,并配置应用程序的入口点以使用该程序集、设置索引、ingnore 字段、鉴别器、ids 列等。

 BsonClassMap.RegisterClassMap<Post>(cm =>
        {
            cm.AutoMap();
            cm.SetIdMember(cm.GetMemberMap(c => c.IdPost));
            cm.UnmapProperty(c => c.TimeStamp);
            cm.UnmapProperty(c => c.DatePostedFormat);
            cm.UnmapProperty(c => c.IdPostString);
            cm.UnmapProperty(c => c.ForumAvatar);
            cm.UnmapProperty(c => c.ForumAvatarAlt);
        });