通过.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);
相关推荐
cuijiecheng201815 小时前
WeFlow 无法使用怎么办?一次数据库组件到期问题的排查与修复
数据库·oracle
2401_8858850417 小时前
国际语音C#接口怎么写?.NET环境下实现国际语音验证码批量下发
开发语言·c#·.net
1-1=020 小时前
.NET Core 本地化 (L10n)
.net·.netcore
1-1=01 天前
.NET Core 健康检查
.net·.netcore·1024程序员节
波力海苔夹心脆6751 天前
C# string 字符串方法大全:判空、查找、截取、分割、替换一篇讲透
经验分享·c#·.net·字符串·string·入门教程
小羊没烦恼!1 天前
.NET无侵入自动化探针原理和主流实现
运维·开发语言·javascript·python·自动化·.net·1024程序员节
IT规划师1 天前
MQTT实战 - 遗嘱消息+心跳机制,让你的设备永远不会“假在线”(七)
物联网·.net
从零数据分析2 天前
零基础学SQL 23:和上月比总对不上?LAG/LEAD 一步取出上一次(附 4 个模板)
java·数据库·sql·mysql·oracle·sqlite·database
oradh2 天前
Oracle 外部表(External Tables)使用总结
数据库·oracle
LMT流氓兔2 天前
第五单元——第10课:用自动化测试验证工具逻辑
数据库·ai·oracle·langchain