网站首页 > 博客文章 正文
Appsettings多环境简介
在实际开发中一般分为开发环境与生产环境,不同环境下部分配置会有所不同,例如数据库连接字符串等。.Net Core 框架中提供了三个值,Development(开发), Staging(分阶段), Production(生产环境),可以根据这三个值配置不同环境。
创建appsettings文件
创建项目时系统默认创建appsettings.json(公共配置)和appsettings.Development.json(开发环境配置),我们还可以自己创建appsettings.Production.json用于存储仅用于生产环境的配置。
切换环境
方法一:开发环境下右击项目–属性–调试–配置环境变量,可以将Development修改为Production读取生产环境配置。
方法二:开发环境下通过修改launchSettings.json中profiles节点下environmentVariables中ASPNETCORE_ENVIRONMENT的值来切换配置环境。
方法三:生产环境下,无法找到launchSettings.json文件,可通过修改web.config中<environmentVariable name="ASPNETCORE_ENVIRONMENT" value="Development" />的value值切换环境配置。
配置文件读取顺序须知
在ASP.NET Core中,默认配置文件是appsettings.json,该文件存储的内容为JSON格式的字符串,我们一般都将程序的配置放在这个文件里面,提供给程序使用,那么我们该如何操作呢?
可能大部分人只了解appsettings.json文件是代替之前web.config配置文件中的<AppSetting>,原先从System.Configuration类库取值调整为通过微软的Microsoft.Extensions.Configuration类库进行读取配置外已经够平时开发使用了。当然如果只有一个appsettings.json文件的时候完全够用的。
但上一篇内容中我们讲到appsettings.{Environment}.json,这时候我们就需要了解当存在多个appsettings.json文件的时候,ASP.NET Core是如何读取的。
我们通过官方文档可以了解到,ASP.NET Core默认加载顺序是appsettings.json->appsettings.Environment.json->appsettings.secrets.json,它会根据当前的运行环境去加载不同的配置文件,最后appsettings.Environment.json 值将替代 appsettings.json 中的值,如果没有多个值,则取appsettings.json中的默认值。
猜你喜欢
- 2024-12-23 Python 安装、Vscode IDE配置python开发环境
- 2024-12-23 Asp.net Core启动流程讲解(一)
- 2024-12-23 牛逼!竟然把VSCode玩成了IDEA的效果,有点哇塞
- 2024-12-23 WebCAD快速入门(在线CAD如何快速搭建和入门)网页浏览和编辑dwg
- 2024-12-23 VS Code 编译和调试C/C++程序也可以这么爽
- 2024-12-23 vscode使用vs2022 msvc编译器
- 2024-12-23 分布式/微服务必配APM系统,SkyWalking让你不迷路
- 2024-12-23 我用VS Code 开发工具来开发 自己的 Flutter 应用 工具快而轻
- 2024-12-23 Flutter 实战经验(五):在 VS Code 里开发 Flutter 应用
- 2024-12-23 人生苦短,不光要用 Python,还要在 VSCode 里用 | 原力计划
你 发表评论:
欢迎- 367℃用AI Agent治理微服务的复杂性问题|QCon
- 358℃初次使用IntelliJ IDEA新建Maven项目
- 355℃手把手教程「JavaWeb」优雅的SpringMvc+Mybatis整合之路
- 351℃Maven技术方案最全手册(mavena)
- 348℃安利Touch Bar 专属应用,让闲置的Touch Bar活跃起来!
- 346℃InfoQ 2024 年趋势报告:架构篇(infoq+2024+年趋势报告:架构篇分析)
- 344℃IntelliJ IDEA 2018版本和2022版本创建 Maven 项目对比
- 342℃从头搭建 IntelliJ IDEA 环境(intellij idea建包)
- 最近发表
- 标签列表
-
- powershellfor (55)
- messagesource (56)
- aspose.pdf破解版 (56)
- promise.race (63)
- 2019cad序列号和密钥激活码 (62)
- window.performance (66)
- qt删除文件夹 (72)
- mysqlcaching_sha2_password (64)
- ubuntu升级gcc (58)
- nacos启动失败 (64)
- ssh-add (70)
- jwt漏洞 (58)
- macos14下载 (58)
- yarnnode (62)
- abstractqueuedsynchronizer (64)
- source~/.bashrc没有那个文件或目录 (65)
- springboot整合activiti工作流 (70)
- jmeter插件下载 (61)
- 抓包分析 (60)
- idea创建mavenweb项目 (65)
- vue回到顶部 (57)
- qcombobox样式表 (68)
- vue数组concat (56)
- tomcatundertow (58)
- pastemac (61)
本文暂时没有评论,来添加一个吧(●'◡'●)