我有一个共享的.NET Standard库,最初被.NET 4.8 MVC 4项目引用。这个共享库中有很多代码使用ConfigurationManager
,例如:
var sze = ConfigurationManager.AppSettings["MaxAttachmentSize"];
这个MaxAttachmentSize
的值(和其他一些值)之前是存储在web.config
文件中的。
现在我正在构建一个.NET 6项目,该项目将使用同一个共享项目,我需要找到一种方法让这些配置应用程序设置在新的.NET Core应用程序中起作用。有什么最好的方法可以做到这一点吗?
我的问题是:
- 是否有一种方法可以让
ConfigurationManager
从.NET Core的appsettings.json
文件中读取数据,就像它在ASP.NET MVC 4项目中从web.config
中读取数据一样? - 如果没有,是否有另一种配置读取器可供使用,可以为我需要的两个项目都发挥作用?
然而,存在一个大问题,就是所有对ConfigurationManger
的调用都是静态的,因此,如果.NET Core选项也可以是静态的,那将非常有帮助。如果不行,那么将需要更多的工作来使ASP.NET MVC 4项目可用于依赖注入。