当前位置: 首页 > wzjs >正文

网站负责人核验现场拍摄照片电子件十大永久免费的软件下载

网站负责人核验现场拍摄照片电子件,十大永久免费的软件下载,国际网站怎么建设,做移动类网站的书推荐在 ASP.NET Core Web API 中,配置文件(如 appsettings.json)是管理应用程序设置的核心部分。ASP.NET Core 提供了一套灵活的配置系统,允许开发者从多种来源加载配置数据,并根据需要使用这些配置。 以下是关于如何在 A…

在 ASP.NET Core Web API 中,配置文件(如 appsettings.json)是管理应用程序设置的核心部分。ASP.NET Core 提供了一套灵活的配置系统,允许开发者从多种来源加载配置数据,并根据需要使用这些配置。

以下是关于如何在 ASP.NET Core Web API 中获取和使用配置文件的详细说明:


1. 配置文件的基本结构

默认情况下,ASP.NET Core 使用 appsettings.json 文件作为主要的配置文件。以下是一个典型的 appsettings.json 文件示例:

{"Logging": {"LogLevel": {"Default": "Information","Microsoft.AspNetCore": "Warning"}},"AllowedHosts": "*","Jwt": {"Key": "YourSecretKeyForJwtAuthentication","Issuer": "YourIssuer","Audience": "YourAudience"},"Database": {"ConnectionString": "Server=your-server;Database=your-db;User Id=your-user;Password=your-password;"}
}
  • Logging:定义日志记录级别。
  • AllowedHosts:指定允许访问的主机。
  • Jwt:JWT 鉴权相关的配置(密钥、签发者、受众等)。
  • Database:数据库连接字符串。

2. 配置文件的加载与绑定

ASP.NET Core 使用 IConfiguration 接口来加载和访问配置数据。以下是配置文件的加载和使用的步骤:

(1) 加载配置文件

Program.csStartup.cs 中,ASP.NET Core 默认会加载 appsettings.json 和环境特定的配置文件(如 appsettings.Development.json)。例如:

var builder = WebApplication.CreateBuilder(args);
  • WebApplication.CreateBuilder 会自动加载以下内容:
    • appsettings.json
    • 环境特定的配置文件(如 appsettings.{Environment}.json
    • 环境变量
    • 命令行参数
(2) 使用 IConfiguration 获取配置值

builder.Configuration 是一个 IConfiguration 实例,可以通过它直接访问配置值。例如:

var jwtKey = builder.Configuration["Jwt:Key"];
var dbConnectionString = builder.Configuration["Database:ConnectionString"];Console.WriteLine($"JWT Key: {jwtKey}");
Console.WriteLine($"DB Connection String: {dbConnectionString}");
(3) 绑定到强类型对象

为了更方便地使用配置,可以将配置绑定到一个强类型的类。例如:

public class JwtSettings
{public string Key { get; set; }public string Issuer { get; set; }public string Audience { get; set; }
}public class DatabaseSettings
{public string ConnectionString { get; set; }
}

然后通过 GetSection 方法绑定到这些类:

var jwtSettings = builder.Configuration.GetSection("Jwt").Get<JwtSettings>();
var databaseSettings = builder.Configuration.GetSection("Database").Get<DatabaseSettings>();Console.WriteLine($"JWT Issuer: {jwtSettings.Issuer}");
Console.WriteLine($"DB Connection String: {databaseSettings.ConnectionString}");

3. 注册配置到依赖注入容器

如果需要在多个地方使用配置,可以将配置注册到依赖注入容器中。例如:

builder.Services.Configure<JwtSettings>(builder.Configuration.GetSection("Jwt"));
builder.Services.Configure<DatabaseSettings>(builder.Configuration.GetSection("Database"));

然后在需要的地方通过构造函数注入 IOptions<T> 来使用配置:

using Microsoft.Extensions.Options;public class AuthService
{private readonly JwtSettings _jwtSettings;public AuthService(IOptions<JwtSettings> jwtSettings){_jwtSettings = jwtSettings.Value;}public void PrintJwtKey(){Console.WriteLine($"JWT Key: {_jwtSettings.Key}");}
}

4. 环境特定的配置文件

ASP.NET Core 支持基于环境的配置文件。例如:

  • 开发环境:appsettings.Development.json
  • 生产环境:appsettings.Production.json

这些文件会覆盖 appsettings.json 中的相同配置项。环境由 ASPNETCORE_ENVIRONMENT 环境变量决定。

例如,appsettings.Development.json 可能包含开发环境特定的配置:

{"Logging": {"LogLevel": {"Default": "Debug"}}
}

可以通过以下方式检查当前环境:

if (builder.Environment.IsDevelopment())
{Console.WriteLine("Running in Development environment");
}
else if (builder.Environment.IsProduction())
{Console.WriteLine("Running in Production environment");
}

5. 其他配置源

除了 appsettings.json,ASP.NET Core 还支持从其他来源加载配置,包括:

(1) 环境变量

可以通过环境变量覆盖配置值。例如:

export Jwt__Key="NewSecretKey"
(2) 命令行参数

启动应用时通过命令行传递参数。例如:

dotnet run --Jwt:Key="CommandLineKey"
(3) 用户机密(Secret Manager)

在开发环境中,可以使用 Secret Manager 工具存储敏感信息,避免将它们提交到版本控制系统中。运行以下命令添加用户机密:

dotnet user-secrets set "Jwt:Key" "SecretFromUserSecrets"

6. 总结

ASP.NET Core 的配置系统非常灵活,以下是关键点的总结:

  1. 默认加载appsettings.json 和环境特定的配置文件会被自动加载。
  2. 访问配置:通过 IConfiguration 接口可以直接访问配置值。
  3. 绑定到强类型对象:可以将配置绑定到强类型的类,方便使用。
  4. 注册到依赖注入:通过 Configure<T> 方法将配置注册到 DI 容器中。
  5. 多来源支持:支持从环境变量、命令行参数、用户机密等多种来源加载配置。

通过合理使用配置系统,可以让应用程序更加灵活、可维护,并且适配不同的运行环境。


文章转载自:

http://t7QNSOqv.wcghr.cn
http://axEVX3SR.wcghr.cn
http://5LbTupn4.wcghr.cn
http://mp0qaZt0.wcghr.cn
http://cc0Hm6lu.wcghr.cn
http://oujBVcVf.wcghr.cn
http://tdLfVQzq.wcghr.cn
http://p8lS4D99.wcghr.cn
http://Sd0kcypX.wcghr.cn
http://zoFswkwp.wcghr.cn
http://Bu7vSLh1.wcghr.cn
http://EWLmvV9r.wcghr.cn
http://dvNLHeAo.wcghr.cn
http://HW6Pnwbq.wcghr.cn
http://bRhTf24j.wcghr.cn
http://kUJDsgcq.wcghr.cn
http://xvH4NQQO.wcghr.cn
http://vIguHX65.wcghr.cn
http://8psLSksU.wcghr.cn
http://yDGRXysa.wcghr.cn
http://NcHlMiDK.wcghr.cn
http://akJZ62EK.wcghr.cn
http://IMHJOyMP.wcghr.cn
http://2l5pJWcV.wcghr.cn
http://I3EidIOm.wcghr.cn
http://mIN3ZXmv.wcghr.cn
http://QwCOaHut.wcghr.cn
http://5NREsvou.wcghr.cn
http://1UuPzxAf.wcghr.cn
http://cQV6A8Ve.wcghr.cn
http://www.dtcms.com/wzjs/768585.html

相关文章:

  • 网络营销中网站的目的是河南省建设工程信息网推荐中项网
  • 外网网址可以做英语阅读的网站小程序开发教程pdf
  • 网站开发知识体系稻壳企业网站模板
  • 商城展示网站建设学校招聘教师网站建设
  • 一级做a免费观看视频网站wordpress表结构怎么样
  • 用模版做网站的好处和坏处wordpress 暂无评论
  • 网站的大图传不上去是怎么回事码云可以做博客网站吗
  • 深圳网站建设外包公司排名用dw做网站怎么添加音乐
  • 做网站如何找广告商wordpress如何修改后台路径
  • 电商网站构建网站建设 推广找山东博达
  • 网站建设评比考核报告ja.wordpress.org
  • 福州网站建设电话教育公司 网站建设
  • 合肥网站建设q479185700棒windows搭建wordpress博客
  • 免费防红短链接生成seo推广哪家好
  • wordpress插件dedecms网站搜索优化怎么做
  • 十堰城市建设网站正品购物网站排行
  • 宣传推广方式有哪些网站如何做seo的
  • 爱站挖词做网站的主题
  • 做游戏网站的需求分析wordpress google站内搜索
  • 织梦网站如何做301跳转正在建设中的网站
  • 金口河移动网站建设网络营销外包有限公司
  • 简单大气的企业网站毕业设计购物网站开发的意义
  • 深圳网站设计兴田德润i简介网站建设原则应考虑哪些方面
  • 汉中市网站建设衡阳市做网站
  • 西昌手机网站建设成都彩钢顶防水廊坊网站建设联系青橙网络
  • 专业做阿里巴巴网站的公司ie不支持wordpress
  • 网站建设策划方案怎么写网站建设 服务内容
  • 理财网站模版贵州安顺做公司网站
  • 百度搜索网站图片成都门户网站建设公司
  • 一级a做片性视频.网站在线观看wordpress主题 flow