二、读取appsettings.json配置
一、什么是JWT根据维基百科定义,JWT(读作 [/dʒɒt/]),即JSON Web Tokens,是一种基于JSON的、用于在网络上声明某种主张的令牌(token)。一、创建项目,本章主要讲的是接口文档在线生成工具Swagger,需要创建WebAPI项目,点击下一步二、输入项目名称和选择项目存储位置,点击下一步三、取消勾选“配置HTTPS“项,勾选"启用OpenAPI支持"项,点击创建...一
本文章基于VS2022 .Net6
.Net Core WebApi项目中我们将把配置文件统一放在appsettings.json文件中,我们将写一个读取配置文件的公用类。
一、新建公共类库Common,用于存放一些公用方法
二、如上图:
使用Nuget安装
Microsoft.Extensions.Configuration
Microsoft.Extensions.Configuration.Json
Microsoft.Extensions.Configuration.Binder
三、Common类库新建AppSetting.cs,代码如下
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.Configuration.Json;
namespace Common.Helper
{
/// <summary>
/// appsettings.json操作类
/// </summary>
public class AppSetting
{
static IConfiguration Configuration { get; set; }
static string ContentPath { get; set; }
public AppSetting()
{
string path = "appsettings.json";
Configuration = new ConfigurationBuilder().SetBasePath(ContentPath).Add(new JsonConfigurationSource
{
Path = path,
Optional = false,
ReloadOnChange = true
}).Build();
}
public AppSetting(IConfiguration configuration)
{
Configuration = configuration;
}
/// <summary>
/// 获取指定属性值
/// </summary>
/// <param name="sections"></param>
/// <returns></returns>
public static string app(params string[] sections)
{
try
{
if (sections.Any())
{
if (Configuration != null)
{
#pragma warning disable CS8603 // 可能返回 null 引用。
return Configuration[string.Join(":", sections)];
#pragma warning restore CS8603 // 可能返回 null 引用。
}
}
}
catch (Exception ex)
{
}
return "";
}
/// <summary>
/// 获取指定对象值
/// </summary>
/// <param name="sections"></param>
/// <returns></returns>
public static List<T> app<T>(params string[] sections)
{
List<T> list = new List<T>();
Configuration.Bind(string.Join(":", sections), list);
return list;
}
}
}
四、appsettings.json 内容如下
{
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft.AspNetCore": "Warning"
}
},
"AllowedHosts": "*",
"AppSettings": {
//数据库连接字符串
"ConnectionStrings": "Server=127.0.0.1;User Id=id;Password=pwd;Database=dbname;"
}
}
五、在项目 Program.cs 里使用 AddSingleton注册AppSetting,并测试读取AppSettings的ConnectionStrings,代码如下
//注册appsettings读取类
builder.Services.AddSingleton(new AppSetting(builder.Configuration));
//测试AppSetting操作
var text = AppSetting.app(new string[] { "AppSettings", "ConnectionStrings" });
Console.WriteLine($"ConnectionString:{text}");
Console.ReadLine();
六、运行测试结果如下
上一章:一、使用Swagger(接口文档工具)_XiaoGuaiSs的博客-CSDN博客前言:本次学习都是在VS2022上进行,其它VS版本实现可能存在差异,仅自己学习记录。一、创建项目,本章主要讲的是接口文档在线生成工具Swagger,需要创建WebAPI项目,点击下一步二、输入项目名称和选择项目存储位置,点击下一步三、取消勾选“配置HTTPS“项,勾选"启用OpenAPI支持"项,点击创建...https://blog.csdn.net/m0_37894611/article/details/123498165?spm=1001.2014.3001.5501下一章:三、JWT(JSON Web Tokens)令牌(token)_XiaoGuaiSs的博客-CSDN博客_jwt参数一、什么是JWT根据维基百科定义,JWT(读作 [/dʒɒt/]),即JSON Web Tokens,是一种基于JSON的、用于在网络上声明某种主张的令牌(token)。JWT通常由三部分组成: 头信息(header), 消息体(payload)和签名(signature)。它是一种用于双方之间传递安全信息的表述性声明规范。JWT作为一个开放的标准(RFC 7519),定义了一种简洁的、自包含的方法,从而使通信双方实现以JSON对象的形式安全的传递信息。二、在appsettings.json中配置jhttps://blog.csdn.net/m0_37894611/article/details/123575644
更多推荐
所有评论(0)