我们正在研究我们公司的应用程序套件。每个应用程序都有不同的业务逻辑但共享一些结构例如,一个应用程序用于" IT服务"另一个用于"包装处理系统"在公司的不同建筑物之间。我们希望使用单独的asp.net mvc项目(实体框架Code-First)创建每个应用程序。但问题是所有应用程序都有一些类似的实体。例如,他们People
中的所有实体都有Buildings
,Floors
和dbContext
个实体。还有一些其他表与这个类似的表有关系
设计此应用程序的最佳方法是什么?
答案 0 :(得分:0)
我对Db管理系统非常感兴趣。我首先喜欢你的3个方法。所有这些都有不同的优点和缺点。如果你有这个数据库的大数据,你可以使用像2这样的解决方案的单独数据库。但是你必须开发你所说的同步机制。如果我们看一下单独db的另一个优点,当一个db失败或损坏时,另一个db可以工作:)但是一些离开数据可能是不可用的,直到错误修复为止。这对大型系统有利。
最后,"为每个应用程序创建一个共享表和另一个数据库的数据库",这个想法非常好:)
您是否可以使用至少3层N-Tier artitecture(业务演示数据)和
业务内容==>你的工人职能
数据层==>许多Db上下文
演示==> MVC项目
我认为解决方案3和失去耦合连接与N-Tier Artch 是最佳方式。
最后你可以去找; 工作单位,Ninject Freamwork,N-Tier主题
注意:Alwasy代码优先:)我喜欢Code First风格:D
度过愉快的一天:)
如果你愿意,我可以展示一些N层结构课程链接" CodeProject.com"和Stackoverflow