.Net Core与ASP.NET区别


ASP.NET

global.asax文件用来启动Web应用程序期间执行的代码编写之处 web.config文件用来配置应用程序执行所需要的所有配置参数

.NET Core

使用StartUp.cs文件来加载配置和启动代码 StartUp类


  1. ConfigureServices()方法

public void ConfigureServices(IServiceCollection services)
{
services.AddMvc();
//注册服务
services.AddScoped<IRepositrory<Student>, InMemoryRepository>();
}

该方法用于定义应用程序所需要的服务,如MVC、EntityFrameWork Core、Identity等。

  1. Configure()方法

public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
//app.UseDefaultFiles();
app.UseStaticFiles();
//通过使用mvc默认的路由
//app.UseMvcWithDefaultRoute();
//自定义mvc的路由,默认路径为/Home/Index
app.UseMvc(builder =>
{
builder.MapRoute("Default", "{Controller=Home}/{Action=index}/{id?}");
});
app.Run(async (context) =>
{
await context.Response.WriteAsync("Hello World!");
});
}

该方法用于配置和构建HTTP请求管道,也就是用来定义我们的应用程序如何来响应请求 动态响应内容


如果在项目中不存在AppSettings.json文件则在项目的根目录下创建改文件

在AppSettings.json文件中添加如下代码:


{
"message": "Hello World from AppSetting.json "
}

在StartUp.cs类中添加一个Configuration属性


public IConfiguration Configuration { get; set; }

在StartUp类的构造函数中加载AppSettings.json文件


public Startup()
{
var builder = new ConfigurationBuilder()
.SetBasePath(Directory.GetCurrentDirectory())
.AddJsonFile("AppSettings.json");
Configuration=builder.Build();
}

最后修改Configure()方法从配置项中读取message的值


public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
app.Run(async (context) =>
{
var message = Configuration["message"];
await context.Response.WriteAsync(message);
});
}

上述即可通过在AppSettings.json文件中动态配置项目所需要的参数