ASP.net Core是从ASP.net的早期版本重新构建的,该版本的配置依赖于web.config文件中的System.Configuration和xml配置。在ASP.net Core中,这是一种声明和访问解决方案,项目特定设置,客户端特定设置等的全局设置的简便方法。新的配置模型可与XML,INI和JSON文件一起使用。
ASP.net Core中的不同配置JSON文件ASP.net Core中主要有6个配置JSON文件。
global.json launchsettings.json appsettings.json bundleconfig.json project.json bower.json
You can define the solution level settings in global.json file.{
"projects": [ "src", "test" ],
"sdk": {
"version": "1.0.0-preview2-003121"
}
}projects-projects属性定义解决方案的源代码位置。它为解决方案中的项目指定了两个位置:src和test.src包含实际的应用程序,而test包含任何测试。
在launchsettings.json文件中,您可以定义与每个配置文件关联的特定于项目的设置,Visual Studio配置为启动应用程序,包括应使用的任何环境变量。您可以为项目定义框架,以对特定的配置文件进行编译和调试。
{
"iisSettings": {
"windowsAuthentication": false,
"anonymousAuthentication": true,
"iisExpress": {
"applicationUrl": "http://localhost:50944/",
"sslPort": 0
}
},
"profiles": {
"IIS Express": {
"commandName": "IISExpress",
"launchBrowser": true,
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
},
"ASPCoreMVCHelloWorld": {
"commandName": "Project",
"launchBrowser": true,
"launchUrl": "http://localhost:5000",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
},
"kestrel": {
"commandName": "kestrel",
"sdkVersion": "dnx-clr-win-x86.1.0.0-preview2-003121"
}
}
}
}您可以通过右键单击项目,然后选择属性来更改每个配置文件的设置。
ASP.NET将应用程序配置设置存储在Web.config中。ASP.NET Core使用AppSettings.json来存储自定义应用程序设置,数据库连接字符串,日志记录等。以下是Appsettings.json的示例-
{
"ApplicationInsights": {
"InstrumentationKey": ""
},
"Logging": {
"IncludeScopes": false,
"LogLevel": {
"Default": "Debug",
"System": "Information",
"Microsoft": "Information"
}
}
}您可以定义项目的捆绑和最小化配置。
[
{
"outputFileName": "wwwroot/css/site.min.css",
//相对输入文件路径的数组。支持球形模式
"inputFiles": [
"wwwroot/css/site.css"
]
},
{
"outputFileName": "wwwroot/js/site.min.js",
"inputFiles": [
"wwwroot/js/site.js"
],
//(可选)指定缩小选项
"minify": {
"enabled": true,
"renameLocals": true
},
//优化生成.map文件
"sourceMap": false
}
]Asp.net Core使用Project.JSON文件存储所有项目级别的配置设置.Project.json文件以JSON格式存储配置信息。
{
"dependencies": {
"Microsoft.NETCore.App": {
"version": "1.0.0",
"type": "platform"
},
"Microsoft.ApplicationInsights.AspNetCore": "1.0.0",
"Microsoft.AspNetCore.Diagnostics": "1.0.0",
"Microsoft.AspNetCore.Mvc": "1.0.0",
"Microsoft.AspNetCore.Razor.Tools": {
"version": "1.0.0-preview2-final",
"type": "build"
},
"Microsoft.AspNetCore.Server.IISIntegration": "1.0.0",
"Microsoft.AspNetCore.Server.Kestrel": "1.0.0",
"Microsoft.AspNetCore.StaticFiles": "1.0.0",
"Microsoft.Extensions.Configuration.EnvironmentVariables": "1.0.0",
"Microsoft.Extensions.Configuration.Json": "1.0.0",
"Microsoft.Extensions.Logging": "1.0.0",
"Microsoft.Extensions.Logging.Console": "1.0.0",
"Microsoft.Extensions.Logging.Debug": "1.0.0",
"Microsoft.Extensions.Options.ConfigurationExtensions": "1.0.0",
"Microsoft.VisualStudio.Web.BrowserLink.Loader": "14.0.0"
}
}Bower是Web的程序包管理器。Bower管理包含HTML,CSS,JavaScript,字体甚至图像文件的组件。Bower安装所需的软件包及其依赖项的正确版本