• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

写文章 - .net core (.net6) 读取配置文件 apphotoshopettings.json

武飞扬头像
runliuv
帮助1

.net core (.net6) 读取配置文件 appsettings.json

新建个工具类,方便其它地方使用,代码如下

AppHelper:

namespace net6mvc.Utils
{
    public class AppHelper
    {
        private static IConfiguration _config;

        public AppHelper(IConfiguration configuration)
        {
            _config = configuration;
        }

        /// <summary>
        /// 读取指定节点的字符串
        /// </summary>
        /// <param name="sessions"></param>
        /// <returns></returns>
        public static string ReadAppSettings(params string[] sessions)
        {
            try
            {
                if (sessions.Any())
                {
                    return _config[string.Join(":", sessions)];
                }
            }
            catch
            {
                return "";
            }
            return "";
        }

        /// <summary>
        /// 读取实体信息
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="session"></param>
        /// <returns></returns>
        public static List<T> ReadAppSettings<T>(params string[] session)
        {
            List<T> list = new List<T>();
            _config.Bind(string.Join(":", session), list);
            return list;
        }
    }
}


学新通

appsettings.json 示例如下:

{
  "Logging": {
    "LogLevel": {
      "Default": "Information",
      "Microsoft.AspNetCore": "Warning"
    }
  },
  "AllowedHosts": "*",
  "AppVer": "2022-01-13 21:54",
  "Test": {
    "A": "Hello",
    "B": {
      "C": "World"
    }
  }
}


学新通

修改Program.cs

  1. 在CreateBuilder前增加
using net6mvc.Utils;

IConfiguration configuration = new ConfigurationBuilder()
                            .AddJsonFile("appsettings.json")
                            .Build();

  1. 在 CreateBuilder 后增加
builder.Services.AddSingleton (new AppHelper(configuration));

完整代码:



using net6mvc.Utils;

IConfiguration configuration = new ConfigurationBuilder()
                            .AddJsonFile("appsettings.json")
                            .Build();

var builder = WebApplication.CreateBuilder(args);

// Add services to the container.
builder.Services.AddControllersWithViews();

builder.Services.AddSingleton (new AppHelper(configuration));

var app = builder.Build();

// Configure the HTTP request pipeline.
if (!app.Environment.IsDevelopment())
{
    app.UseExceptionHandler("/Home/Error");
}
app.UseStaticFiles();

app.UseRouting();

app.UseAuthorization();

app.MapControllerRoute(
    name: "default",
    pattern: "{controller=Home}/{action=Index}/{id?}");

app.Run();


学新通

使用

public IActionResult Index()
{
    string a = AppHelper.ReadAppSettings("Test", "A");
    string b = AppHelper.ReadAppSettings("Test", "B", "C");
    ViewBag.Test1 = $"{a} ***** {b}";
    string AppVer = AppHelper.ReadAppSettings("AppVer");
    ViewBag.AppVer = AppVer;
    return View();
}

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhggbiae
系列文章
更多 icon
同类精品
更多 icon
继续加载