.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即可。

相关推荐
华仔啊几秒前
这个Vue3旋转菜单组件让项目颜值提升200%!支持多种主题,拿来即用
前端·javascript·css
非凡ghost22 分钟前
Adobe Lightroom安卓版(手机调色软件)绿色版
前端·windows·adobe·智能手机·软件需求
BestAns1 小时前
Postman 平替?这款轻量接口测试工具,本地运行 + 批量回归超实用!
前端
专注前端30年1 小时前
Webpack进阶玩法全解析(性能优化+高级配置)
前端·webpack·性能优化
烛阴2 小时前
Lua世界的基石:变量、作用域与七大数据类型
前端·lua
张拭心2 小时前
“不卷 AI、不碰币、下班不收消息”——Android 知名技术大牛 Jake Wharton 的求职价值观
android·前端·aigc
SoaringHeart2 小时前
Flutter疑难解决:单独让某个页面的电池栏标签颜色改变
前端·flutter
Yeats_Liao2 小时前
Go Web 编程快速入门 13 - 部署与运维:Docker容器化、Kubernetes编排与CI/CD
运维·前端·后端·golang
Yeats_Liao2 小时前
Go Web 编程快速入门 14 - 性能优化与最佳实践:Go应用性能分析、内存管理、并发编程最佳实践
前端·后端·性能优化·golang
蒜香拿铁2 小时前
Angular【http服务端交互】
前端·http·angular.js