通过.NET6 创建的ASP.NET Core webapi项目中没有 Startup 类和ConfigureServices 方法

Startup.cs 作用就是,对项目中用到的 静态文件,管道,服务,日志,路由,数据库连接,过滤器的注册 等 所有的有关程序的启动运行中用到的

没有startup.cs可以手动新建一个Startup.cs类(具体代码可视自身情况修改

cs 复制代码
public class Startup
{
    public Startup(IConfiguration configuration)
    {
        Configuration = configuration;
    }

    public IConfiguration Configuration {  get; }

    //在依赖注入容器中注册服务
    public void ConfigureServices(IServiceCollection services)
    {
        services.AddSingleton<IDbConfig.IDbConfig, DbConfig.DbConfig>();
        services.AddTransient<IBaseService, BaseService>();

        services.AddControllers();
        services.AddSwaggerGen(c =>
        {
            c.SwaggerDoc("v1", new OpenApiInfo { Title = "这里填写项目的名称", Version = "v1" });

        });
    }
    public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
    {
        if(env.IsDevelopment())
        {
            app.UseDeveloperExceptionPage();
            app.UseSwagger();
            app.UseSwaggerUI(c => c.SwaggerEndpoint("/swagger/v1/swagger.json", "这里填写项目的名称 v1"));
        }
        app.UseRouting();
        app.UseAuthorization();
        app.UseEndpoints(endpoints =>
        {
            endpoints.MapControllers();
        });
    }
}

上面写完后可以就到了第二步

program.cs内部更新逻辑

Startup.cs 类所需的所有对象都存在于 builder 对象中,因此我们可以将所需的对象传递给和方法。

cs 复制代码
var builder = WebApplication.CreateBuilder(args);

var startup = new Startup(builder.Configuration);
startup.ConfigureServices(builder.Services);

var app = builder.Build();
startup.Configure(app, builder.Environment);
相关推荐
ChaITSimpleLove2 小时前
使用 Dockerfile 构建基于 .NET9 的跨平台基础镜像
.net·dockerfile·.net aspire·dotnet-sdk·pwsh·docker image·docker buildx
专注VB编程开发20年3 小时前
开机自动后台运行,在Windows服务中托管ASP.NET Core
windows·后端·asp.net
AI、少年郎4 小时前
Oracle 进阶语法实战:从多维分析到数据清洗的深度应用(第四课)
数据库·oracle
专注VB编程开发20年7 小时前
C#,VB.NET从JSON数据里提取数组中的对象节点值
c#·json·.net
界面开发小八哥10 小时前
界面组件DevExpress WPF中文教程:Grid - 如何获取节点?
.net·wpf·界面控件·devexpress·ui开发
cpsvps10 小时前
触发器设计美国VPS:优化数据库性能的关键策略
数据库·oracle
今晚打老虎z11 小时前
dotnet-env: .NET 开发者的环境变量加载工具
前端·chrome·.net
圆滚滚肉肉11 小时前
后端MVC(控制器与动作方法的关系)
后端·c#·asp.net·mvc
我是唐青枫12 小时前
C#.NET NLog 详解
开发语言·c#·.net
一线码农13 小时前
MinHook 如何对 .NET 母体 CoreCLR 进行拦截
c#·.net·代码注入