.NET Core 中的命名問題:Startup 中的 ConfigureServices 與 Configure


一直不喜歡 Startup 中這兩個可讀性很比較差的糟糕命名 ConfigureServicesConfigureConfigureServices 用於配置依賴注入以在運行時根據依賴關系創建對象,Configure 用於配置中間件(middleware)以構建請求處理流水線。

今天寫代碼寫累后散步時思考了這兩個命名問題,突然想到一個成語排兵布陣ConfigureServices排兵Configure布陣。如果對應公司運營,ConfigureServices 就是給工作崗位安排人員,Configure 是制定工作流程。

根據排兵布陣,想到的英文命名是 ArrangeOrganize ,使用這2個命名改造后的 Starup 變成了這樣:

public class Startup
{
    public Startup(IConfiguration configuration)
    {
        Configuration = configuration;
    }

    public IConfiguration Configuration { get; }

    public void ConfigureServices(IServiceCollection services)
    {
        Arrange(services);
    }

    public void Arrange(IServiceCollection services)
    {
        services.AddControllersWithViews();
    }

    public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
    {
        Organize(app, env);
    }

    public void Organize(IApplicationBuilder app, IWebHostEnvironment env)
    {
        var builder = env.IsDevelopment() ? app.UseDeveloperExceptionPage() : 
            app.UseExceptionHandler("/Home/Error");            

        app.UseStaticFiles();

        app.UseRouting();

        app.UseAuthorization();

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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM