ASP.NET Core(一) 应用初始化

一、Startup类

  应用程序的入口、环境配置、服务注册;主要包含Configure()、ConfigureServices()

  Configure必须的应用程序请求处理管道

  ConfigureServices选择包含的应用程序配置服务

  执行顺序:ConfigureServices执行于Configure之前

Configure 介绍以及microsoft文档

  IApplicationBuilder :是对所有实现了IApplicationBuilder接口的所有类型及其对象的统称

    UseStaticFiles:为当前请求路径启用静态文件服务

    UseMvc:将MVC添加到IApplicationBuilder请求执行管道

  IHostingEnvironment

    IsDevelopment:检查当前的主机环境名称是否为开发

    IsEnvironment:将当前主机环境名称与指定值进行比较

    IsProduction:检查当前的托管环境名称是否为生产

    IsStaging:检查当前的主机环境名称是否是Staging

  具体更多的点击链接、ASP.NET Core 默认的注册服务还有

  • ILoggerFactory、ILogger、IApplicationBuilderFactory、IHttpContextFactory、DiagnosticSource、IStartupFilter.....
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
  //Debeg显示错误详细
if (env.IsDevelopment()) { app.UseBrowserLink(); app.UseDeveloperExceptionPage(); } else { app.UseExceptionHandler("/Home/Error"); }    //静态文件服务 app.UseStaticFiles();    app.UseMvc(routes => { routes.MapRoute( name: "default", template: "{controller=Home}/{action=Index}/{id?}"); }); }

 

ConfigureServices 介绍以及microsoft文档

  IServiceCollection  注册服务,DI容器

  .........

public void ConfigureServices(IServiceCollection services)
{
    //获取数据库连接字符串
    var sqlConnectionString = Configuration.GetConnectionString("Default");
    #region Mysql连接//添加数据上下文
    services.AddDbContext<BasicsDBContext>(options => options.UseMySQL(sqlConnectionString));
    #endregion

    #region 依赖注入
    services.AddScoped<IUserRepository, UserRepository>();#endregion//MVC 注册 添加MVC服务
    services.AddMvc();
    //Session服务
    services.AddSession();
}

 

posted @ 2018-03-15 14:47  Frank.Deng  阅读(1250)  评论(0编辑  收藏  举报