我是.net c#开发人员,我目前正在探索与mongo db数据库的集成。该数据库将是mvc数据库的后端。
CRUD操作将在数据库中从MVC应用程序执行到mongo db,并且数据将从一个简单的控制台应用程序插入到其中,该应用程序解析xml文件并将数据库插入/更新到mongo db。
我一直在审查C Sharp Mongo Db驱动程序并且有一个关于对象serliazation和强类型对象的关系等问题。我不是很清楚我是否有一个对象来反映mongo bson的结构文献。此对象被序列化到mongo db文档中。我对此有疑问:
答案 0 :(得分:1)
您可以在此处查看序列化教程中与版本控制相关的部分:http://www.mongodb.org/display/DOCS/CSharp+Driver+Serialization+Tutorial#CSharpDriverSerializationTutorial-HandlingSchemaChanges。
1)要回答你的第一个问题,你的对象肯定需要版本容忍。
2)只要映射相同,它们就不需要共享同一个对象。这意味着相同的结构,相同的属性和相同的约定。
话虽这么说,共享相同的数据对象并不是世界末日。而且你不会在两个系统之间创建依赖关系。相反,您将创建一个共享库,其中包含持久保存数据所需的对象和代码。然后,您不需要在两种不同的介质之间复制代码。将共享库视为API。
另一种方法是让控制台应用程序调用MVC应用程序来上传数据。 MVC应用程序不仅成为用户与之交互的API,也成为程序的API。再次,逻辑在一个地方。