моя контактная информация
Почтамезофия@protonmail.com
2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
Функция Startup.cs заключается в управлении статическими файлами, каналами, службами, журналами, маршрутизацией, подключениями к базе данных, регистрацией фильтров и т. д., используемыми в проекте, а также используются при запуске и запуске всех связанных программ.
Если файл startup.cs отсутствует, вы можете вручную создать новый класс Startup.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, присутствуют в объекте компоновщика, поэтому мы можем передать необходимые объекты методам и.
- var builder = WebApplication.CreateBuilder(args);
-
- var startup = new Startup(builder.Configuration);
- startup.ConfigureServices(builder.Services);
-
- var app = builder.Build();
- startup.Configure(app, builder.Environment);