.net core 3.0 + angular 8.0 ----项目创建过程

  1. 读取appsetting.json数据为整体项目使用,以及在对应的环境下使用对应的配置文件。

官方文档:ASP.NET Core 中的配置 | Microsoft Learn

创建.net core application时,已经存在IConfiguration,我们只是在需要使用的地方声明使用即可(IConfiguration.GetConnectionString("your using name").

复制代码
public class Program
{
    public static void Main(string[] args)
    {
        CreateHostBuilder(args).Build().Run();
    }

    public static IHostBuilder CreateHostBuilder(string[] args) =>
        Host.CreateDefaultBuilder(args)
            .ConfigureWebHostDefaults(webBuilder =>
            {
                webBuilder.UseStartup<Startup>();
            });
}

ASP.NET Core在应用启动时读取环境变量ASPNETCORE_ENVIRONMENT,ASPNETCORE_ENVIRONMENT可以设置任意值,但框架仅支持三个值:Development、Staging 和 Production,因此我们先在项目中添加appsettings.Development.json、appsettings.Production.json和appsettings.Staging.json以备用。

项目默认生成的appsettings.json用来存放公共配置,当我们设置Development环境时,最终的配置项是appsettings.Development.json和appsettings.json求并集的结果,若两文件有同名配置项则以appsettings.Development.json为准,其他环境同理。各json文件的配置项如下

复制代码
/*appsettings.json*/
{
  "UserType": "default",
  "OnlyDefault": "onlyDefault"
}
 
/*appsettings.Development.json*/
{
{
  "UserType": "development",
  "OnlyDevelopment": "onlyDevelopment"
}
 
/*appsettings.Production.json*/
{
  "UserType": "production",
  "OnlyProduction": "onlyProduction"
}
 
/*appsettings.Staging.json*/
{
  "UserType": "staging",
  "OnlyStaging": "onlyStaging"

}

ASPNETCORE_ENVIRONMENT设置为Development,那在VS中调试的时候就会读取appsettings.Development.json的数据
无论 ASPNETCORE_ENVIRONMENT设置为Development、Staging、Production,只要项目中有appsettings.Production.json,那项目发布后运行时默认会读取Production的配置。

在本地开发时,保证是在development即可。

相关推荐
kyriewen2 小时前
我手写了一个 EventEmitter,面试官追问了 6 个问题——第 4 个我没答上来
前端·javascript·面试
IT_陈寒2 小时前
Java的Date类又坑了我一次,改用时间戳真香
前端·人工智能·后端
小林攻城狮3 小时前
使用 Transport 节流解决 Vercel AI SDK 流式渲染卡死问题
前端·react.js
前端缘梦3 小时前
告别 TS 运行时类型漏洞!Zod 完整入门实战教程(前端 / 全栈必备)
前端·react.js·全栈
the_answer3 小时前
Webpack vs Vite 深度对比分析
前端·webpack
转转技术团队4 小时前
验证码识别实战:前端不写页面,改训模型了?
前端
MomentYY4 小时前
Temperature:AI 的“脑洞旋钮”
前端·llm·ai编程
远航_4 小时前
OpenSpec 完整详细介绍
前端·后端
召钱熏4 小时前
状态枚举正确≠渲染正确:一个语音按钮的状态机边界修复实录
android·前端
SkyWalking中文站4 小时前
认识 Horizon UI · 1/17:SkyWalking 新一代可观测性控制台
运维·前端·监控