using System; using System.Collections.Generic; using System.Linq; using System.Net.Http; using System.Reflection; using System.Text; using System.Threading.Tasks; using Microsoft.Extensions.Configuration; using Microsoft.Extensions.DependencyInjection; namespace EasyTemplate.Tool; public static class Setting { /// /// /// private static IConfigurationRoot? configuration; /// /// 获取配置文件 /// /// /// public static bool AddConfiguration(this IServiceCollection services) { configuration = configuration ?? new ConfigurationBuilder() .SetBasePath(AppDomain.CurrentDomain.BaseDirectory) .AddJsonFile("Configuration/App.json", optional: true, reloadOnChange: true) .AddJsonFile("Configuration/DataBase.json", optional: true, reloadOnChange: true) .AddJsonFile("Configuration/ThirdParty.json", optional: true, reloadOnChange: true) .Build(); Log.Info("加载配置完成"); return configuration is null; } /// /// 获取appsettings.json配置信息 /// /// /// /// public static T? Get(string path) { try { var value = configuration?.GetSection(path).Value; var result = (T)Convert.ChangeType(value, typeof(T)); return result; } catch (Exception) { return default; } } /// /// 获取appsettings.json配置信息 /// /// /// /// public static IConfigurationSection? GetSection(string path) { try { return configuration?.GetSection(path); } catch (Exception) { return default; } } }