.Net Core与ASP.NET区别
ASP.NET
global.asax文件用来启动Web应用程序期间执行的代码编写之处 web.config文件用来配置应用程序执行所需要的所有配置参数
.NET Core
使用StartUp.cs文件来加载配置和启动代码 StartUp类
- ConfigureServices()方法
public void ConfigureServices(IServiceCollection services)
{
services.AddMvc();
//注册服务
services.AddScoped<IRepositrory<Student>, InMemoryRepository>();
}
该方法用于定义应用程序所需要的服务,如MVC、EntityFrameWork Core、Identity等。
- 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文件中动态配置项目所需要的参数