我该如何打破这个项目

时间:2013-04-29 17:05:13

标签: asp.net-mvc-3

我有一个项目,这是VS2010中的单一解决方案,我希望如此:

  • 解决方案一:管理员
  • 解决方案二:前端
  • 解决方案三:模型

原因是管理员将坐在自己的应用程序池中,而前端将位于另一个应用程序池中。然后,我们与模型对话,模型下是SQL数据库。

我的问题是:

如何将其设置为三个单独的项目,以便模型可以与管理员,前端和数据库通信?

1 个答案:

答案 0 :(得分:0)

对于你描述的内容,我认为你最好保留一个解决方案,并在其下有多个项目。

您可以将构建Admin项目的结果部署到一个网站,并将前端项目的构建结果部署到另一个网站。

其中每一个都会引用Models项目。模型通常不会与其他项目“交谈”,但会被它们引用,因为启动操作来自对任一站点的网页请求 - 这就是控制流程。

通常你还有另一个项目,它是一个后台服务,也可能引用你的模型项目。该项目将作为NT服务运行,提供与传入Web请求无关的工作项的基于时间的执行,例如,发送电子邮件。

更复杂的是引入服务层和数据传输对象(DTO)。您的后台服务和所有网站现在调用服务层并仅与DTO交互,而服务层使用模型对象与数据库通信。现在,您可以独立于Web应用程序改进数据库架构,前提是服务合同保持不变。