.NET Core应用中ConfigurationBuilder的AddJsonFile扩展方法找不到
.NET Core配置相关问题解答
为什么调用AddJsonFile会触发CS1061错误?
AddJsonFile是专门处理JSON配置文件的扩展方法,它并不包含在Microsoft.Extensions.Configuration核心包里,而是定义在Microsoft.Extensions.Configuration.Json这个独立的NuGet包中。- 扩展方法的生效前提是项目必须引用包含该方法的程序集,所以只装核心配置包的话,编译器找不到这个方法,就会报CS1061错误。添加
Microsoft.Extensions.Configuration.Json包后,问题就解决了。
为什么移除Microsoft.Extensions.Configuration包应用还能运行?
- 这是因为
Microsoft.Extensions.Configuration.Json包本身就依赖了Microsoft.Extensions.Configuration核心包。当你安装JSON配置包时,NuGet会自动把它的依赖包(也就是核心配置包)一并下载并添加到项目的依赖链里。 - 所以即使你手动移除了核心包的直接引用,项目仍然能通过JSON配置包的间接依赖找到
ConfigurationBuilder等必要类型,应用自然能正常运行。不过还是建议保留核心包的直接引用,这样项目的依赖关系更明确,避免后续版本更新时出现意外问题。
内容的提问来源于stack exchange,提问作者AgostinoX
相关产品推荐
相关产品推荐

