Visual Studio 在同一个解决方案中将ASP.NET MVC和Web API部署到IIS

dxpyg8gm  于 2022-11-17  发布在  .NET
关注(0)|答案(2)|浏览(184)

我有一个具有3层(数据、逻辑、服务)的VisualStudio解决方案,我还有一个使用这些层的ASP.NETMVC5应用程序,以及一个向外部公开某些功能的WebAPI。
问题是您如何处理这种结构的部署,因为如果您分别发布ASP.NET MVC应用程序和Web API,您基本上将复制业务层,因此下次您将不得不再次在2个站点中重新部署?
IIS中现在的内容:目前在我的IIS文件夹中:

* Web (folder)
    * Bin -> Data.dll, Logic.dll, Service.dll (duplicated)

且还

* Api (folder) 
    * Bin -> Data.dll, Logic.dll, Service.dll (duplicated)

此致

2uluyalo

2uluyalo1#

为什么不只是mvc应用程序只作为一个表示层工作,并消耗您的api??通过这种业务逻辑将不会重复,以及您未来的表示层也可以消耗相同的api。

8nuwlpux

8nuwlpux2#

你的服务(web api)和应用程序(Mvc)基本上是两个不同的应用程序。所以你应该分开部署它们。它们将从两个不同的域(至少从不同的端口)提供服务。
无论何时对服务进行更改,您只需部署服务,Web应用程序也是如此。
但是,我觉得对于这个项目来说,单个MVC应用程序(您的Web应用程序)就足够了,它带有WebApi控制器来公开一些端点(您的服务)。

相关问题