1个解决方案中的3个MVC项目

时间:2013-01-04 11:16:32

标签: visual-studio-2010 entity-framework dbcontext asp.net-mvc-areas

我必须使用Entity Framework构建3个MVC Web应用程序(www.company1.com www.company2.com www.company3.com)。这些网站都将访问相同的sql server数据库,但会以自己的方式(外观,数据等)略有不同。很可能所有三个MVC应用程序都将托管在同一台服务器上,但绑定到不同的域名。

目前在Visual Studio中,我的解决方案具有以下结构

  • 域类
  • 数据层
  • 服务
  • 存储库
  • MVC App 1
  • MVC App 2
  • MVC App 3

我本来希望使用Area,但我不能,因为必须为每个站点分配它自己的不同域名。我想我只是在寻求保证,在发布应用程序时,以这种方式构建我的解决方案不会给我带来任何困难。我对于共享dbContext的网站有些偏执,但是,我知道很多声音很傻。

如果这一切看起来都不错,或者有更好的方式来做我要求的事情,那将是很好的建议我。

一如既往地感谢。

2 个答案:

答案 0 :(得分:1)

只要您有一个很好的方法来验证和区分Datalayer中的网站,您就不必担心。你是如何证实的?

我也总是将simulair代码和页面放在主项目中,这样就不会为不同的站点复制部分甚至整个页面。 (我的猜测是你已经这样做了)

答案 1 :(得分:1)

出于同样的原因,我也做了同样的事情。我有一个CMS必须驻留在不同的主机名。它工作正常。

诀窍是找到在MVC应用程序之间共享代码的方法。为了避免循环依赖等,我创建了一个MVC应用程序来保存诸如我的控制器之类的东西,它可以提供图像文件,可以重复使用的HTML帮助程序等等。