怪物奇妙物语

宇宙无敌超级美少男的怪物奇妙物语

首页 新随笔 联系 管理
  819 随笔 :: 0 文章 :: 2 评论 :: 16万 阅读

配置文件如何注册引用

注册配置文件的形式

注册方式

// 第一种注册方式:注册配置文件
builder.Services.Configure<AppSettings>(builder.Configuration.GetSection("AppSettings"));
AppSettings appSettings = builder.Configuration.GetSection(AppSettings.Key).Get<AppSettings>()!;
Console.WriteLine(appSettings.Port);
Console.WriteLine(appSettings.ConnectionString);

使用方式

using Microsoft.AspNetCore.Mvc;
using Microsoft.Extensions.Options;
namespace AspDemo.Server.Controllers;
[ApiController]
[Route("[controller]")]
public class AppSettingTwoController : ControllerBase
{
// 👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇
private readonly AppSettings _appSettings;
// 👇👇👇👇👇👇👇👇👇👇👇
public AppSettingTwoController(IOptions<AppSettings> appSettings)
{
_appSettings = appSettings.Value;
}
[HttpGet]
public IActionResult Get()
{
System.Console.WriteLine(_appSettings.ConnectionString);
System.Console.WriteLine(_appSettings.Port);
return Ok(_appSettings);
}
}

将配置文件注册成单例模式

注册方式

// 第二种注册方式:将配置文件注册成单例模式
builder.Services.AddSingleton(s => s.GetRequiredService<IOptions<AppSettings>>().Value);

使用方式

using Microsoft.AspNetCore.Mvc;
namespace AspDemo.Server.Controllers;
[ApiController]
[Route("[controller]")]
public class AppSettingController : ControllerBase
{
// 👇👇👇👇👇👇👇👇👇👇👇👇👇👇👇
private readonly AppSettings _appSettings;
// 👇👇👇👇👇👇👇👇👇
public AppSettingController(AppSettings appSettings)
{
// 👇👇👇👇👇👇👇👇👇
_appSettings = appSettings;
}
[HttpGet]
public IActionResult Get()
{
System.Console.WriteLine(_appSettings.ConnectionString);
System.Console.WriteLine(_appSettings.Port);
return Ok(_appSettings);
}
}
posted on   超级无敌美少男战士  阅读(6)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
历史上的今天:
2022-09-06 pip-离线安装第三方包
2022-09-06 flask restful demo from github
点击右上角即可分享
微信分享提示