C#ASP.NET Core中有哪些可用的各种JSON文件?

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

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安装所需的软件包及其依赖项的正确版本