.Net Core Web应用加载读取Json配置文件
⒈添加Json配置文件并将“复制到输出目录”属性设置为“始终复制”
1 { 2 "Logging": { 3 "LogLevel": { 4 "Default": "Warning" 5 } 6 }, 7 "AllowedHosts": "*" 8 }
1 { 2 "ConnectionStrings": { 3 "StudyConnStr": "Data Source=.;Initial Catalog=Study;User ID=sa;Password=admin" 4 } 5 }
⒉在Program中加载配置文件
1 using System; 2 using System.Collections.Generic; 3 using System.IO; 4 using System.Linq; 5 using System.Threading.Tasks; 6 using Microsoft.AspNetCore; 7 using Microsoft.AspNetCore.Hosting; 8 using Microsoft.Extensions.Configuration; 9 using Microsoft.Extensions.Logging; 10 11 namespace EF_SqlServer 12 { 13 public class Program 14 { 15 public static void Main(string[] args) 16 { 17 CreateWebHostBuilder(args).Build().Run(); 18 19 } 20 21 public static IWebHostBuilder CreateWebHostBuilder(string[] args) => 22 WebHost.CreateDefaultBuilder(args) 23 .ConfigureAppConfiguration((hostingContext, config) => 24 { 25 config.SetBasePath(Directory.GetCurrentDirectory()); 26 config.AddJsonFile("//Config//dbconfig.json", true, true); 27 config.AddJsonFile("appsettings.json", true, true); 28 }).UseStartup<Startup>(); 29 } 30 }
⒊使用配置文件中的相关属性
1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Threading.Tasks; 5 using Microsoft.AspNetCore.Builder; 6 using Microsoft.AspNetCore.Hosting; 7 using Microsoft.AspNetCore.Http; 8 using Microsoft.AspNetCore.HttpsPolicy; 9 using Microsoft.AspNetCore.Mvc; 10 using Microsoft.Extensions.Configuration; 11 using Microsoft.Extensions.DependencyInjection; 12 13 namespace EF_SqlServer 14 { 15 public class Startup 16 { 17 public Startup(IConfiguration configuration) 18 { 19 Configuration = configuration; 20 } 21 22 public IConfiguration Configuration { get; } 23 24 // This method gets called by the runtime. Use this method to add services to the container. 25 public void ConfigureServices(IServiceCollection services) 26 { 27 services.Configure<CookiePolicyOptions>(options => 28 { 29 // This lambda determines whether user consent for non-essential cookies is needed for a given request. 30 options.CheckConsentNeeded = context => true; 31 options.MinimumSameSitePolicy = SameSiteMode.None; 32 }); 33 string dbConn = Configuration.GetSection("ConnectionStrings").GetSection("StudyConnStr").Value; 34 string logDef = Configuration["Logging:LogLevel:Default"]; 35 services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_2); 36 } 37 38 // This method gets called by the runtime. Use this method to configure the HTTP request pipeline. 39 public void Configure(IApplicationBuilder app, IHostingEnvironment env) 40 { 41 if (env.IsDevelopment()) 42 { 43 app.UseDeveloperExceptionPage(); 44 } 45 else 46 { 47 app.UseExceptionHandler("/Home/Error"); 48 // The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts. 49 app.UseHsts(); 50 } 51 52 app.UseHttpsRedirection(); 53 app.UseStaticFiles(); 54 app.UseCookiePolicy(); 55 56 app.UseMvc(routes => 57 { 58 routes.MapRoute( 59 name: "default", 60 template: "{controller=Home}/{action=Index}/{id?}"); 61 }); 62 } 63 } 64 }
作者:奇
出处:https://www.cnblogs.com/fanqisoft/p/10806862.html
版权:本作品采用「本文版权归作者和博客园共有,欢迎转载,但必须给出原文链接,并保留此段声明,否则保留追究法律责任的权利。」许可协议进行许可。
分类:
.NET Core
如果文章内容对您有所帮助,欢迎赞赏.
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!