.Net Core 6.0 配置Swagger文档

本文介绍了在.NetCore6.0以上版本中如何配置Swagger,由于不再有Startup类,配置过程有所不同。首先,需要下载Swagger相关的NuGet包,然后在Program类中添加Swagger的服务注入和配置。接着,通过修改launchSettings.json文件来配置Swagger的启动路径,确保在开发环境中可以正确访问Swagger界面。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天教大家如何配置.net core 6.0以上的版本的Swagger文档;.Net Core 6.0 以上的swagger和以前的3.1版本不太一样了,少了,startup类,所以,我们注入的时候会和之前不太一样!!


 一、创建一个.Net Core 6.0 以上的项目

打开后发现,项目里里面没有Startup注入的文件类;只有一个Program类;


二、我们需要下载一个关于配置Swagger注入的NuGet包

 只有下载了这个包,我们才能够在Program里面进行注入,否则的话,里面有一些内置方式是不能用的。如:AddSwaggerGen


三、注入Swagger功能

点开Program在里面进行NuGet包的引用和注入

using Microsoft.EntityFrameworkCore;
using Microsoft.OpenApi.Models;
using UserAPI.Model;

var builder = WebApplication.CreateBuilder(args);

// Add services to the container.
var ConnString = "Data Source=8.130.75.152;Initial Catalog=Students;User ID=sa;Password=Admin123";
//注入
builder.Services.AddDbContext<DbEntitys>(x => x.UseSqlServer(ConnString));

builder.Services.AddControllers();
// Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle
builder.Services.AddEndpointsApiExplorer();



//----------------swagger配置---------------------
var ApiName = "NoName.Core";
builder.Services.AddSwaggerGen(s =>
{
    s.SwaggerDoc("V1", new OpenApiInfo
    {
        Version = "V1",
        Title = $"{ApiName} 接口文档——Netcore 6.0",
    });
    s.OrderActionsBy(o => o.RelativePath);
});
//----------------swagger配置---------------------


var app = builder.Build();

//----------------swagger配置---------------------
app.UseSwagger();
app.UseSwaggerUI(s =>
{
    s.SwaggerEndpoint($"/swagger/V1/swagger.json", $"{ApiName} V1");

    s.RoutePrefix = "";//请求swagger路径
});
// Configure the HTTP request pipeline.
if (app.Environment.IsDevelopment())
{
    app.UseSwagger();
    app.UseSwaggerUI();
}
//----------------swagger配置---------------------

app.UseHttpsRedirection();

app.UseAuthorization();

app.MapControllers();

app.Run();

我在代码里面已经标注好了, 注入的位置 ,在谁的上面,在谁的下面。按照位置进行注入;否则,如果注入的地方不对的话是不能运行的;


四、配置Swagger启动路径

正常情况下,如果没有配置路径的话,他默认启动,会找不到页面,所以我们需要配置一下路径;

1、点开Properties文件夹下的launchSettings.json文件

 打开后里面是这样的:

{
  "$schema": "https://json.schemastore.org/launchsettings.json",
  "iisSettings": {
    "windowsAuthentication": false,
    "anonymousAuthentication": true,
    "iisExpress": {
      "applicationUrl": "http://localhost:44707",
      "sslPort": 44367
    }
  },
  "profiles": {
    "UserAPI": {
      "commandName": "Project",
      "dotnetRunMessages": true,
      "launchBrowser": true,
      //"launchUrl": "swagger",
      //"applicationUrl": "https://localhost:7203;http://localhost:5203",
      "environmentVariables": {
        "ASPNETCORE_ENVIRONMENT": "Development"
      }
    },
    "IIS Express": {
      "commandName": "IISExpress",
      "launchBrowser": true,
      "launchUrl": "swagger",
      "environmentVariables": {
        "ASPNETCORE_ENVIRONMENT": "Development"
      }
    }
  }
}

我们只需要把profiles里面的的launchUrl和applicationUrl给注释掉就行,如果只是本地跑的话。也可以直接在"launchUrl": "swagger/index.html"如果要发布的话,但是还不确定自己要发布的IP或者域名,就直接把applicationUrl给注释了就行了。

我这里图个方便,直接全部注释了,自动适配;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值