时间:2021-05-28
前言
最近在研究把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://", "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(); }}总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对的支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
前言正如大家所知,在.NETCore中配置文件改成了appsettings.json,表面上和.NETFramework的web.config或app.conf
.NetCore将之前Web.Config中的配置迁移到了appsettings.json文件中,并使用ConfigurationBuilder来读取这个配置文
ASP.NET提供了三种用于在出现错误时捕获和响应错误的主要方法:page_error事件、application_error事件以及应用程序配置文件(Web.
错误发生的原因是当ASP.NET检测到Web站点配置为使用ASP.NET4.0,本地ASP.NET4.0的组件会传递一个不能扩展的URL到ASP.NET的管理程
.net提供的是针对当前机器的配置。---名称:machine.config运行机制:asp.net网站IIS启动的时候会加载配置文件中的配置信息,然后缓存这些