.net core ConfigureServices和Configure

在.NET Core应用程序中,ConfigureServicesConfigure方法在Startup类中起着重要的作用。

ConfigureServices方法用于进行依赖注入的配置。在该方法内,你可以注册应用程序所需要的各种服务、中间件和其他依赖项。它接收一个IServiceCollection参数,你可以通过调用该参数的方法来注册服务。示例代码:

public void ConfigureServices(IServiceCollection services)
{
    services.AddMvc();
    services.AddSingleton<IMyService, MyService>();
    
    services.AddScoped<PermissionFilter>();
    services.AddScoped<IAuthorizationHandler, GroupRequirementHandler>();
}

在上面的示例中,我们使用AddMvc方法注册了MVC服务,使用AddSingleton方法注册了一个单例服务。

Configure方法用于配置应用程序的HTTP请求处理管道。在该方法内,你可以添加中间件,配置路由、授权、异常处理等。它接收一个IApplicationBuilder参数,你可以通过调用该参数的方法来添加中间件和配置管道。示例代码:

public void Configure(IApplicationBuilder app)
{
    app.UseStaticFiles();
    app.UseRouting();
    app.UseAuthentication();
    app.UseAuthorization();

    //...其他中间件

    app.UseEndpoints(endpoints =>
    {
        endpoints.MapControllers();
    });
}

在上面的示例中,我们使用UseStaticFilesUseRoutingUseAuthenticationUseAuthorization等方法来添加内置的中间件到管道中。

  • ConfigureServices方法在应用程序启动时执行,它负责配置服务的注册。
  • Configure方法在启动时执行,它负责配置中间件和管道的顺序。

通过这两个方法的配合使用,你可以完成应用程序所需的服务注册和管道配置,使得应用程序可以以正确的方式处理HTTP请求。

你可能感兴趣的:(C#,.netcore)