【发布时间】:2011-01-07 03:03:04
【问题描述】:
虽然这个问题在名称上类似于this 和this,但实际上并非如此。
我目前正在开发一个库,可能需要根据用户的需要进行一些自定义配置。
我创建了一个自定义配置部分,一切正常。
但是,当我调试时,我注意到配置部分构造函数被调用了两次。这不是我想要的。
深入挖掘,我发现它的发生是因为,为了从库中访问配置信息,我使用了以下方法:
var config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
var section = config.GetSection("myConfigSection");
在此之前,.NET Framework 已经为运行该库的应用程序初始化了配置环境,从而调用了MyConfigSection 类的构造函数。
我的问题是,如何访问已经加载的信息?
为什么类的构造函数被调用两次
因为我不想像上面的代码那样重新加载所有内容。
编辑添加
构造函数被调用两次,即使将上面的代码更改为:
var section = ConfigurationManager.GetSection("myConfigSection");
编辑澄清
这个问题不是关于访问MyConfigSection,我访问它就好了。
问题是关于为什么类的构造函数被调用两次。
再澄清一点
如果类的构造函数被调用两次,则加载过程发生两次。
而且我根本不希望这种情况发生。太可笑了。
是的,根据我对这个问题的第一次编辑,我正在调用 Configurationmanager 的静态方法。
【问题讨论】:
标签: .net optimization app-config configurationmanager