在 .NET Core 中使用 ViewConfig 调试配置

介绍
.NET Core 中的配置包含了多个配置提供程序,包括了 appsettings.json,环境变量,命令行参数等,还有一些扩展的自定义提供程序,比如说 ApolloConfig,AgileConfig 这些,然后从键值对中读取配置信息。
在我们的程序中,我们有时需要知道一个配置是由哪一个Provider执行的,以及配置冲突导致我们的设置没有生效,在本文中,我们在.NET Core 程序中使用了 ViewConfig 组件来调试配置。
安装
通过Nuget搜索 ViewConfig,然后在程序中安装,这是一个.net standard 2.0 的组件。

设置
安装完成以后,需要修改 Startup.cs 文件的 Configure 方法,我们加一行代码 UseViewConfig
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
if (env.IsDevelopment())
{
app.UseViewConfig();
app.UseDeveloperExceptionPage();
app.UseSwagger();
// ...
}
这里建议在开发环境中使用,和Swagger一样, 然后我们启动程序,然后访问 /viewconfig 端点

上面列出了程序中所有的配置项,我们可以看到 Key,Value,也可以通过 Provider 知道配置来自与 appsetting.json 文件或者其他,可以通过下拉列表查看不同的 Provider 的配置信息。
自定义
默认使用的是 /viewconfig 端点,输出的是页面,当然也支持输出 json 和文本,像下面这样
// 自定义端点
app.UseViewConfig(x => x.Map("/Info"));
// 页面格式
app.UseViewConfig(x => x.RenderPage());
// Json格式
app.UseViewConfig(x => x.Map().RenderJson());
// 文本格式
app.UseViewConfig(x => x.Map("/Info").RenderText());
总结
ViewConfig 是一个非常简单的组件,可以帮助我们在.NET Core 程序中调试配置信息,接下来还会支持在.Net Core 控制台项目中使用,需要注意的是,我建议大家只在开发环境中使用它,希望可以对您有帮助。
https://github.com/SpringLeee/ViewConfig
在 .NET Core 中使用 ViewConfig 调试配置的更多相关文章
- laravel 整合 swoole ,并简单 ab 测试对比性能以及在 PHPstorm 中利用debug调试配置swoole服务中的PHP代码
安装PHP 的 swoole 扩展 及 安装 laravel,就不描述了 整合 laravel 和 swoole 用了这个轮子,侵入性很小,一行代码搞定,推荐一下,今天刚用,不能预测未来是否会遇见坑 ...
- .net core 中的多环境配置
参考地址:https://docs.microsoft.com/zh-cn/aspnet/core/fundamentals/environments?view=aspnetcore-2.2 官网说环 ...
- [.net core]6.launchSettings.json,调试配置
展开properties, 双击查看内容, { "iisSettings": { "windowsAuthentication": false, "a ...
- .net core 中环境变量的配置
配置文件: Properties目录下的launchSettings.json IISExpress配置 "ASPNET_ENV": "EnvironmentOne&qu ...
- asp.net core 中hangfire面板的配置及使用
1.定义校验授权类DyDashboardAuthorizationFilter /// <summary> /// Hangfire仪表盘配置授权 /// </summary> ...
- 3、带你一步一步学习ASP.NET Core中的配置之Configuration
如果你是刚接触ASP.NET Core的学习的话,你会注意到:在ASP.NET Core项目中,看不到.NET Fraemwork时代中的web.config文件和app.config文件了.那么你肯 ...
- [翻译] 如何在 ASP.Net Core 中使用 Consul 来存储配置
[翻译] 如何在 ASP.Net Core 中使用 Consul 来存储配置 原文: USING CONSUL FOR STORING THE CONFIGURATION IN ASP.NET COR ...
- Net Core 中使用 Consul 来存储配置
Net Core 中使用 Consul 来存储配置 https://www.cnblogs.com/Rwing/p/consul-configuration-aspnet-core.html 原文: ...
- [06]ASP.NET Core中的进程内(InProcess)托管
ASP.NET Core 进程内(InProcess)托管 本文作者:梁桐铭- 微软最有价值专家(Microsoft MVP) 文章会随着版本进行更新,关注我获取最新版本 本文出自<从零开始学 ...
随机推荐
- 微信小程序批量上传图片 All In One
微信小程序批量上传图片 All In One open-data https://developers.weixin.qq.com/miniprogram/dev/component/open-dat ...
- UTM & User Tracking Message
UTM & User Tracking Message utm_source https://marketingplatform.google.com/about/resources/link ...
- modal 弹框遮罩层,滚动穿透bug 解决方案
modal 弹框遮罩层,滚动穿透bug 解决方案 parent component 动态设置 lock css const computedClassName = classNames( 'activ ...
- 12月15日BGV币行情分析
今日,DeFi市场格外精彩.各主流概念币种走势出现了涨跌各半的两极态势.笔者认为,由于并没有总体可以利好DeFi市场的基本面因素,所以各DeFi概念币种的涨跌态势,还是与各自的基本面和技术面走势相关. ...
- c/c++ 之静态库
静态库 编译成目标文件(未链接) g++ -c a.cc b.cc c.cc d.cc #生成 a.o b.o c.o d.o 将目标文件打包为静态库 ar rs libxxx.a a.o b.o c ...
- 谈谈 JS 垃圾回收机制
谈谈 JS 垃圾回收机制 JS内存泄漏与垃圾回收机制 https://javascript.info/garbage-collection
- Kubernetes中分布式存储Rook-Ceph部署快速演练
最近在项目中有涉及到Kubernetes的分布式存储部分的内容,也抽空多了解了一些.项目主要基于Rook-Ceph运行,考虑到Rook-Ceph部署也不那么简单,官方文档的步骤起点也不算低,因此,在整 ...
- GMS的概述
1 GMS GMS全称为GoogleMobile Service,即谷歌移动服务. GMS是Google所提供的一系列移动服务,包括开发用的一系列服务和用户所用的Google Apps. Maps与L ...
- 一个基于 Vue3 的开源项目,3个月时间 star 终于破千!
本文主要是对如何做开源项目的一些思考. 前文回顾: <Vue3 来了,Vue3 开源商城项目重构计划正式启动!> <一个基于 Vue 3 + Vant 3 的开源商城项目> 关 ...
- zabbix 面板graph图上没有数据显示
1. 问题: zabbix_server日志出现大量如下错误: query failed: [1526] Table has no partition for value 1507509984 2. ...