我如何在 ASP.NET 核心 Web 应用程序中添加 API

How can i add an API in an ASP.NET Core Web App

我已经在 Visual Studio 中创建了一个“ASP.NET Core Web App”项目。

我想在这个项目中添加一个 API?我可以创建一个单独的 Web API 项目,但我想将所有内容都放在同一个项目中。

可能吗?

谢谢

我建议您构建一个 API 解决方案,然后再构建一个单独的核心 Web 应用程序解决方案。

否则您可以尝试从 'Blank Solution' 开始并向其添加不同的项目。

如果您想保留 Web 应用程序项目并添加一些 API 端点,您可以在项目根目录添加一个文件夹(例如 Api),您可以将 api-控制器。 然后在该文件夹中,您可以添加一个从 ControllerBase 派生的 class 并用 [ApiController] 属性和 [Route] 属性装饰它。

这需要在您的 Startup.cs 中配置控制器:

  1. ConfigureServices() 添加对 services.AddControllers();
  2. 的调用
  3. Configure 中指定 MapControllers() 选项:
app.UseEndpoints(endpoints => {
   // other code
   endpoints.MapControllers();
});