0

我有一个具有 3 层(数据、逻辑、服务)的 Visual Studio 解决方案,我还有一个使用这些层的 Asp.Mvc 5 应用程序和 WebApi,以公开一些外部功能。

问题是你如何处理这种结构的部署,因为如果你发布,Mvc app 和 Api separetley 你基本上会复制业务层,所以下次你将不得不在 2 个站点中重新部署?

我现在将在 IIS 中拥有的内容:

目前在我的 IIS 文件夹中:

  • 网页(文件夹)

    • Bin -> Data.dll、Logic.dll、Service.dll(重复)

并且

  • Api(文件夹)

    • Bin -> Data.dll、Logic.dll、Service.dll(重复)

问候

4

2 回答 2

0

为什么不只是 mvc 应用程序仅用作表示层并使用您的 api?通过这种业务逻辑将不会重复,并且您未来的表示层也可以使用相同的 API ....

于 2020-01-01T17:57:30.517 回答
0

您的服务(web api)和应用程序(Mvc)基本上是 2 个不同的应用程序。所以你应该单独部署它们。它们将由 2 个不同的域(至少来自不同的端口)提供服务。

每当您对服务进行更改时,您只需要部署该服务。Web 应用程序也是如此。

但是,我觉得对于这个项目来说足够了,单个 MVC 应用程序(您的 Web 应用程序),带有用于公开一些端点(您的服务)的 WebApi 控制器。因此,您将只部署一个 MVC 应用程序。

于 2020-01-01T18:04:24.033 回答