欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

ASP.NET core Web中使用appsettings.json配置文件的方法

程序员文章站 2024-02-08 08:23:04
前言 最近在研究把asp.net程序移植到linux上,正好.net core出来了,就进行了学习。 移植代码基本顺利,但是发现.net core中没有configur...

前言

最近在研究把asp.net程序移植到linux上,正好.net core出来了,就进行了学习。

移植代码基本顺利,但是发现.net core中没有configurationmanager,无法读写配置文件,单独写个xml之类的嫌麻烦,就谷歌了下,发现了个方法,遂记录如下,方便以后查找:

方法如下

配置文件结构

public class demosettings
{
 public string maindomain { get; set; }
 public string sitename { get; set; }
}

appsettings.json中显示效果

appsettings.json

{
 "demosettings": {
 "maindomain": "http://www.mysite.com",
 "sitename": "my main site"
 },
 "logging": {
 "includescopes": false,
 "loglevel": {
  "default": "debug",
  "system": "information",
  "microsoft": "information"
 }
 }
}

配置services

原配置

public void configureservices(iservicecollection services)
{
 // add framework services.
 services.addmvc();
}

自定义

public void configureservices(iservicecollection services)
{
 // add framework services.
 services.addmvc();
 
 // added - uses ioptions<t> for your settings.
 services.addoptions();
 
 // added - confirms that we have a home for our demosettings
 services.configure<demosettings>(configuration.getsection("demosettings"));
}

然后把设置注入进相应的controller后就可以使用了

public class homecontroller : controller
{
 private demosettings configsettings { get; set; }
 
 public homecontroller(ioptions<demosettings> settings)
 {
  configsettings = settings.value;
 }
 
 public iactionresult index()
 {
  viewdata["sitename"] = configsettings.sitename;
  return view();
 }
}

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对的支持。