在本文中,我们将探讨在使用 Visual Studio 2022 和 .NET 8 创建新的 ASP.NET Core Web API 应用程序时,默认生成的文件和文件夹结构。如果您想了解如何创建、构建和运行 ASP.NET Core Web API,请参阅我们之前的文章。
在上一篇文章中,我们使用 Visual Studio 2022 和 .NET 8 创建了一个 ASP.NET Core Web API 项目,并介绍了其默认的文件和文件夹结构。
依赖项文件夹包含项目中安装的所有包和SDK。展开后,您可以看到三个子文件夹:
ASP.NET Core Web API 采用基于控制器的方法。所有控制器都应该位于“Controllers”文件夹中。例如,一个名为 WeatherForecastController
的控制器,其代码如下:
C#using Microsoft.AspNetCore.Mvc;
namespace MyFirstWebAPIProject.Controllers {
[ApiController]
[Route("[controller]")]
public class WeatherForecastController : ControllerBase {
private static readonly string[] Summaries = new[] {
"Freezing", "Bracing", "Chilly", "Cool", "Mild", "Warm", "Balmy", "Hot", "Sweltering", "Scorching"
};
private readonly ILogger<WeatherForecastController> _logger;
public WeatherForecastController(ILogger<WeatherForecastController> logger) {
_logger = logger;
}
[HttpGet(Name = "GetWeatherForecast")]
public IEnumerable<WeatherForecast> Get() {
return Enumerable.Range(1, 5).Select(index => new WeatherForecast {
Date = DateOnly.FromDateTime(DateTime.Now.AddDays(index)),
TemperatureC = Random.Shared.Next(-20, 55),
Summary = Summaries[Random.Shared.Next(Summaries.Length)]
}).ToArray();
}
}
}
launchSettings.json
文件是一个非常重要的配置文件,它位于项目的 Properties
文件夹下。这个文件主要用于配置项目的启动设置,包括环境变量、应用程序URL、启动浏览器等选项。这些设置主要用于开发环境,帮助开发者快速启动和测试应用。
JSON{
"$schema": "http://json.schemastore.org/launchsettings.json", // JSON schema的URL,用于编辑器支持和验证JSON结构
"iisSettings": { // IIS特定的设置
"windowsAuthentication": false, // 是否启用Windows身份验证
"anonymousAuthentication": true, // 是否启用匿名身份验证
"iisExpress": {
"applicationUrl": "http://localhost:47522", // IIS Express运行时的应用程序URL
"sslPort": 44389 // IIS Express使用的SSL端口
}
},
"profiles": { // 定义多个启动配置文件
"http": { // “http”配置
"commandName": "Project", // 使用项目文件启动,即直接通过dotnet运行
"dotnetRunMessages": true, // 是否显示dotnet运行时的消息
"launchBrowser": true, // 启动时是否打开浏览器
"launchUrl": "swagger", // 浏览器启动时打开的URL,这里是swagger页面
"applicationUrl": "http://localhost:5059", // 应用程序的HTTP URL
"environmentVariables": { // 环境变量设置
"ASPNETCORE_ENVIRONMENT": "Development" // 设置环境为开发模式
}
},
"https": { // “https”配置
"commandName": "Project",
"dotnetRunMessages": true,
"launchBrowser": true,
"launchUrl": "swagger",
"applicationUrl": "https://localhost:7169;http://localhost:5059", // 应用程序的HTTPS和HTTP URL
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
},
"IIS Express": { // IIS Express配置
"commandName": "IISExpress",
"launchBrowser": true,
"launchUrl": "swagger",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
}
}
}
此文件用于配置项目的设置,如数据库连接字符串、日志设置等。它支持环境特定的版本,如 appsettings.Development.json
,这些文件可以根据应用程序运行的环境覆盖默认设置。
这是一个在 IDE 中直接测试 HTTP 请求的功能文件。例如,使用 JetBrains Rider 或 Visual Studio Code 时,可以直接在 IDE 中发送 HTTP 请求并查看响应。
Http@MyFirstWebAPIProject_HostAddress = http://localhost:5059 GET {{MyFirstWebAPIProject_HostAddress}}/weatherforecast/ Accept: application/json
创建和构建 Web 应用程序的过程涉及设置服务和配置,然后通过中间件配置 HTTP 请求管道。最后,使用 app.Run();
方法启动应用程序。
C#var builder = WebApplication.CreateBuilder(args);
builder.Services.AddControllers();
builder.Services.AddEndpointsApiExplorer();
builder.Services.AddSwaggerGen();
var app = builder.Build();
if (app.Environment.IsDevelopment()) {
app.UseSwagger();
app.UseSwaggerUI();
}
app.UseHttpsRedirection();
app.UseAuthorization();
app.MapControllers();
app.Run();
以上就是使用 Visual Studio 和 .NET 8 创建 ASP.NET Core Web API 项目时遇到的常见文件和目录。希望本文能帮助您更好地理解 ASP.NET Core Web API 项目的默认文件和文件夹结构。
本文作者:rick
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!