新闻中心

C# 怎么读取应用程序的配置文件 appsettings.json_C# appsettings.json 配置文件读取方法

2025-11-01
浏览次数:
返回列表
答案是使用 Microsoft.Extensions.Configuration 读取 appsettings.json。首先安装 Microsoft.Extensions.Configuration.Json 包,创建并配置 appsettings.json 文件属性为“如果较新则复制”,通过 ConfigurationBuilder 设置基路径并加载 JSON 文件,利用 IConfigurationRoot 读取配置值,支持冒号语法访问嵌套节点,并可将配置节绑定到强类型对象如 AppSettings 类,实现类型安全的配置管理。

c# 怎么读取应用程序的配置文件 appsettings.json_c# appsettings.json 配置文件读取方法

在 C# 中读取 appsettings.json 配置文件,通常使用 .NET 的配置系统(Microsoft.Extensions.Configuration)。这个方法适用于 Console 应用、ASP.NET Core 以及其他支持该扩展的项目类型。下面介绍如何正确加载和读取 appsettings.json 文件中的配置。

1. 添加必要的 NuGet 包引用

确保项目中安装了以下 NuGet 包:

  • Microsoft.Extensions.Configuration
  • Microsoft.Extensions.Configuration.Json

可以通过 NuGet 包管理器或命令行安装:

dotnet add package Microsoft.Extensions.Configuration.Json

2. 创建 appsettings.json 文件

在项目根目录添加一个名为 appsettings.json 的文件,并设置其“复制到输出目录”属性为“如果较新则复制”。

示例内容如下:

{ "AppSettings": { "SiteName": "MyWebsite", "Version": "1.0.0", "ConnectionString": "Server=localhost;Database=MyDB;Trusted_Connection=true;" }, "Logging": { "LogLevel": "Information" } }

右键点击该文件,在属性中确认“复制到输出目录”为“始终复制”或“如果较新则复制”,确保运行时能访问到它。

3. 使用 ConfigurationBuilder 读取配置

在程序中使用 ConfigurationBuilder 构建配置对象,然后读取值。

示例代码(以 Console 应用为例):

短影AI 短影AI

长视频一键生成精彩短视频

短影AI 170 查看详情 短影AI using Microsoft.Extensions.Configuration;
using System;

var builder = new ConfigurationBuilder()
.SetBasePath(Directory.GetCurrentDirectory())
.AddJsonFile("appsettings.json", optional: false, reloadOnChange: true);

IConfigurationRoot configuration = builder.Build();

string siteName = configuration["AppSettings:SiteName"];
string version = configuration["AppSettings:Version"];
string connectionString = configuration["AppSettings:ConnectionString"];

Console.WriteLine($"站点名称: {siteName}");
Console.WriteLine($"版本: {version}");
Console.WriteLine($"连接字符串: {connectionString}");

这里通过冒号(:)语法访问嵌套节点,如 AppSettings:SiteName

4. 绑定配置到强类型对象

定义一个类来映射配置结构:

public class AppSettings
{
public string SiteName { get; set; }
public string Version { get; set; }
public string ConnectionString { get; set; }
}

然后使用 Bind 方法或 GetSection().Get() 映射配置:

var appSettings = new AppSettings();
configuration.GetSection("AppSettings").Bind(appSettings);
// 或者:
// var appSettings = configuration.GetSection("AppSettings").Get();

这样就可以像操作普通对象一样使用配置项了。

基本上就这些。只要引入正确的包、配置好 JSON 文件路径并使用 ConfigurationBuilder,就能轻松读取 appsettings.json 中的内容。这种方式灵活且符合现代 .NET 开发规范。

以上就是C# 怎么读取应用程序的配置文件 appsettings.json_C# appsettings.json 配置文件读取方法的详细内容,更多请关注其它相关文章!


# 就能  # seo中讯计算机  # 清远短视频seo排名  # 公司建设网站的优势  # 推广直播标题文案网站  # 微博营销的品牌推广方式  # 百度营销推广咨询客服  # 电商网站如何推广电商网  # 长治网络营销的推广  # 好seo课程  # 品牌网站建设哪家快速  # 适用于  # 如何在  # js  # 序列化  # 加载  # 操作指南  # 如何将  # 绑定  # 应用程序  # .net  # c#  # 配置文件  # microsoft  # app  # json 


相关栏目: 【 科技资讯46185 】 【 网络学院92790


相关推荐: React列表渲染与独立状态管理:避免全局状态影响局部更新  腾讯视频怎么举报不良内容_腾讯视频内容举报流程与违规信息处理方法  必由学官网快捷入口 必由学网页版在线学习平台  如何更改在 Excel 中打开超链接时的默认浏览器  必由学登录入口 必由学官方网站在线访问链接  cad如何更改注释性对象的比例_cad注释性比例调整方法  c++ 获取系统当前时间 c++时间戳获取方法  千牛数据看板网页版_千牛数据看板网页版访问方法  Angular中单选按钮的正确使用与常见陷阱解析  sublime如何处理大型CSV文件的列对齐_sublime高级表格编辑插件指南  4399免费游戏网址入口 4399小游戏免费入口点开即玩  知音漫客正版漫画平台_知音漫客官网账号登录  基于动态规划的房屋花卉种植最小成本算法详解  拼多多视频播放卡顿如何处理 拼多多视频播放优化技巧  Python类型检查:优化关联可选属性的Mypy推断策略  mysql密码锁定怎么解锁_mysql密码锁定解锁后修改密码步骤  ArchiveofOurOwn小说阅读-ArchiveofOurOwn同人作品访问链接  Win11蓝牙耳机断连怎么解决 Win11蓝牙设置重新配对与驱动更新【技巧】  如何使用J*aScript精确选择并批量修改特定父元素下子链接的样式  京东单号查询入口_京东快递订单追踪入口  “音游” × “怪文书” 题材的节奏冒险游戏 《晕晕电波症候群》确定于2026年4月发售!  美团外卖商家服务中心入口 美团商家版官网入口  狙击外星人小游戏开始_狙击外星人小游戏立即开始  sublime怎么覆盖插件的默认快捷键_sublime快捷键优先级与设置  腾讯视频怎么使用多账号家庭管理_腾讯视频家庭多账号统一管理与权限分配教程  押井守高度称赞《辐射4》:玩了八年都停不下来!  如何优雅地扩展SprykerGlue后端API授权逻辑,使用spryker/glue-backend-api-application-authorization-connector-extension  我的世界mc.js免费游戏直接能玩 我的世界mc.js小游戏免费秒玩入口  c++中的std::basic_string的SSO优化_c++短字符串优化深度解析  迅雷下载到U盘速度很慢怎么办_迅雷U盘下载慢优化方法  抖音小游戏合成大西瓜免费秒玩入口链接 抖音小游戏热门合集秒玩网站  铃兰之剑为这和平的世界希里技能组及加点推荐  MAC的“快捷指令”怎么同步到iPhone_MAC利用iCloud同步所有设备的自动化指令  J*aScript中高效清空DOM列表元素:解决for循环中断与任务管理问题  Pandas DataFrame 多条件优先级排序与排名  React Hooks最佳实践:动态组件状态管理的组件化方案  腾讯QQ邮箱官方网站_QQ邮箱网页版在线登录  QQ邮箱官方网页版登录 QQ邮箱个人邮箱快速访问  在J*a中如何使用Stream.map转换元素_Stream映射操作解析  QQ邮箱登录官网首页 腾讯QQ邮箱网页入口  Win11文件资源管理器卡顿怎么修 Win11重置资源管理器进程优化响应速度【修复方法】  大麦的“候补”是什么意思 大麦候补购票规则【详解】  AO3网页版合集入口 Archive of Our Own同人作品浏览指南  不同用户不同价格! 索尼开启账户个性化定价测试  蛙漫安全无毒 官方认证的绿色入口  MAC怎么安装Homebrew包管理器_MAC为开发者和高级用户安装命令行工具  《北京人工智能产业白皮书(2025)》发布:全年核心产值预计突破 4500 亿元  C++如何实现一个智能指针_手动实现C++ shared_ptr的引用计数功能  利用5118提升短视频内容效果_5118短视频关键词优化方法  Python中高效访问嵌套字典与列表中的键值对 

搜索