glo*_*ter 10 c# asp.net asp.net-mvc asp.net-web-api asp.net-core
我有一个由以下项目构成的 ASP.NET Core (.NET Core 2.2) 应用程序:
ControllerBase)现在,我想添加一个与 API 对话的 UI(MVC 部分 pre-.NET-core)。这是如何通过 .NET Core 实现的,其中 MVC 和 WebAPI 是一回事?MVC 控制器/模型/视图应该是 API 的一部分吗?它应该是一个监听不同端口的新项目吗?身份验证如何适用于两者(例如,API 通常具有一些基于令牌的身份验证,UI 应用程序通常具有用户名/密码身份验证)?WebAPI 和 MVC 部分是否应该像 ASP.NET Identity 一样共享相同的身份验证?如果他们使用相同的数据库,那不会将两者紧密结合吗?
是否有某种 Microsoft 或社区建议的约定/文档来说明如何构建此类项目?
pri*_*sar 12
这是如何通过 .NET Core 实现的,其中 MVC 和 WebAPI 是一回事?
在 dotnet 核心 MVC 和 WebAPI 可以存在于同一个项目中。一切应用程序就像一个控制台应用程序。您可以将 MVC 服务添加到启动类中,使其成为 MVC 应用程序。
MVC 控制器/模型/视图应该是 API 的一部分吗?
最好为 MVC 和 WebAPI 相关功能分别设置不同的控制器,同时将它们保存在同一文件夹中。
模型 - 它们可以重用于 mvc 和 webapi。视图模型和 DTO 也是如此。
视图 - 仅用于 MVC,webapi 不需要视图。
它应该是一个监听不同端口的新项目吗?
是的,您可以为 webapi 和 MVC 创建不同的项目。
身份验证如何适用于两者(例如,API 通常具有一些基于令牌的身份验证,UI 应用程序通常具有用户名/密码身份验证)?
如果您使用基于令牌的身份验证,那么 Web API 和 MVC 都可以使用。
WebAPI 和 MVC 部分是否应该像 ASP.NET Identity 一样共享相同的身份验证?如果他们使用相同的数据库,那不会将两者紧密结合吗?
如果您将 ASP.Net Identity 与身份服务器一起使用,那么 MVC 和 webapi 将能够共享相同的身份验证机制,而不会紧密耦合。
| 归档时间: |
|
| 查看次数: |
6558 次 |
| 最近记录: |