重构代码以在一个解决方案中拥有多个Web项目或站点

时间:2017-10-29 09:46:47

标签: c# .net

上下文:我有一个代码库,它包含一个MVC项目,一个WebAPI项目和一个同一个解决方案中的Web项目,最初的目的是为每个功能/区域组成不同的网站例如,在解决方案中,存在用于管理站点的文件夹,例如视图,服务层,存储库等,并且对于客户站点,存在相同的文件夹结构和文件。这两个文件夹中的代码不共享相同的服务层代码,并且是重复的。我想将这两个站点的代码重构为标准设计和层。

问题:使这两个区域在IIS中显示为两个独立的网站的最佳方法是什么?目前,IIS中只有一个站点,因此如果没有另一个站点,则无法运行一个站点。我是否需要为这些项目制作两个单独的Web项目,重构代码然后将启动项目设置为多个启动项目?因为知道这将直接影响两个区域的重构以使用相同的服务层逻辑和共享代码。

对于设计的任何指示或建议都将非常感激,因为我在解决方案中只使用了一个Web项目之前没有尝试过这个,我希望其他人使用这种类型的设计和重构以在IIS中为区域/ Web项目在同一解决方案中创建多个站点节点。

1 个答案:

答案 0 :(得分:1)

在解决方案中拥有2​​个或更多Web项目并单独构建和部署到IIS没有任何问题。您可能在同一个Visual Studio实例中同时调试这两个应用程序时遇到问题,但通过打开另一个Visual Studio可以轻松解决这个问题!

this是一本很好的书,可用于查看不同的解决方案布局。

我过去在github上也看到过一些很好的例子:https://github.com/thiagolunardi/MvcMusicStoreDDD