C# ASP.NET Core 中有哪些 JSON 文件?
ASP.net Core 是基于之前版本的 ASP.net 重新架构的,之前的配置依赖于 System.Configuration 和 web.config 文件中的 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
global.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
在 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"
}
}
}
}
您可以通过右键单击项目并选择"属性"来更改每个配置文件的设置。
appsettings.json
ASP.NET 将应用程序配置设置存储在 Web.config 中。ASP.NET Core 使用 AppSettings.json 来存储自定义应用程序设置、数据库连接字符串、日志记录等。以下是 Appsettings.json 的示例 −
{
"ApplicationInsights": {
"InstrumentationKey": ""
},
"Logging": {
"IncludeScopes": false,
"LogLevel": {
"Default": "Debug",
"System": "Information",
"Microsoft": "Information"
}
}
}
bundleconfig.json
您可以定义项目的打包和压缩配置。
[
{
&"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
}
]
project.json
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.json
Bower 是一个 Web 包管理器。Bower 管理包含 HTML、CSS、JavaScript、字体甚至图像文件的组件。Bower 会安装您所需的正确版本的包及其依赖项。

