Startup类是ASP.NET Core Web应用程序的入口点之一,该类定义Web应用程序的配置,包括中间件和各种服务的配置。Startup类通常包含两个方法ConfigureServices和Configure。
1. ConfigureServices方法
ConfigureServices方法是用于配置应用程序的服务提供程序的。在此方法中,您可以将各种服务添加到应用程序的依赖注入容器中。它通常用于注册各种服务,例如数据库上下文、身份验证和授权服务、日志服务等。以下是一些在ConfigureServices方法中添加服务的示例:
public void ConfigureServices(IServiceCollection services)
{
// 注册数据库上下文和其他服务
services.AddDbContext<MyDbContext>();
services.AddScoped<IMyService, MyService>();
services.AddIdentity<ApplicationUser, IdentityRole>()
.AddEntityFrameworkStores<MyDbContext>();
services.AddAuthentication();
services.AddMvc();
}
2. Configure方法
Configure方法用于定义应用程序的请求处理管道并配置中间件。在此方法中,您将使用请求委托处理函数(或称为请求处理管道)将HTTP请求与中间件一起组成。以下是一些在Configure方法中使用中间件的示例:
public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
else
{
app.UseExceptionHandler("/Error");
}app.UseStaticFiles();
app.UseAuthentication();
app.UseMvc(routes =>
...
}
通过Startup类,您可以方便地组合各种中间件和服务来建立自己的请求处理管道。这使得您可以轻松地添加和删除中间件来实现自定义的功能和行为。同时,Startup类使得各种配置和服务非常清晰。