我们正在使用mongodb和c#。我们正试图找到一种方法来保持我们的集合无缝一致。现在,如果开发人员对类结构进行了任何更改(添加字段或更改数据类型或更改嵌套类中的属性),他/她必须手动更改mongo集合。
随着我们项目的不断发展以及从事该项目的开发人员不断增加,这很痛苦。想知道某人是否已经找到了解决这个问题的方法。
答案 0 :(得分:1)
如果要在访问记录时逐渐迁移,则需要遵循一些简单的规则:
1)如果添加字段,最好可以为空或者指定默认值。
2)切勿重命名字段,切勿更改字段类型 - 而是始终添加新字段,添加迁移代码,仅在迁移所有文档时删除旧字段。
使用MongoDB和C#进行原型设计我构建了一个dynamic wrapper ...,它允许您使用 only 接口指定对象(不需要类),并且它允许您动态添加新接口到现有的对象。尚未准备好用于生产,但是为了进行原型设计,它可以节省大量精力并使迁移变得非常简单。