在命名空间 'System.Configuration' 中找不到类型名称 'ConfigurationManager'。此类型已转发
The type name 'ConfigurationManager' could not be found in the namespace 'System.Configuration'. This type has been forwarded
我在使用 Visual Studio 2019 的 .NET 5.0 项目中收到此错误(已在 Community/Student 版和专业版上试用)。
“在命名空间 'System.Configuration' 中找不到类型名称 'ConfigurationManager'。此类型已被转发...”
我找到的许多答案都说您需要添加“using System.Configuration;”以及通过 Project -> Add Reference 添加程序集命名空间作为引用。这个答案没有对我有用,因为没有“参考”文件夹或“项目”选项卡中“添加参考”的任何选项。 引用管理器中也没有“程序集”选项卡。只有“项目”、“共享项目”、“COM”和“浏览”。
如何添加 System.Configuration 作为参考以便我可以使用 ConfigurationManager?
编辑: 虽然这个答案可能会消除错误,但这不是“正确”的答案,因为 .NET 5 不支持 ConfigurationManager。其他答案解释得最好。
在 Visual Studio 2019 中,单击顶部的工具 选项卡。
工具 -> NuGet 包管理器 -> 管理解决方案的 NuGet 包...
搜索“System.Configuration.ConfigurationManager”。
安装到你的项目,错误应该消失了。
.NEt 5 不使用旧的 ConfigurationManager 您需要阅读 json
public IConfiguration Configuration { get; set; }
public Startup(IHostingEnvironment environment)
{
Configuration = new Configuration()
.AddJsonFile("config.json");
}
var options = ConfigurationBinder.Bind<AppSettings>(Configuration);
Console.WriteLine(options.SomeSetting);
更多信息请参考
GitHub.com/aspnet/Options/test/Microsoft.Extensions.Options.Test/OptionsTest.cs
System.Configuration.ConfigurationManager 在 .NET 5 中不受支持。请参阅此处了解如何将具有 web.config 文件的应用程序迁移到 .NET Core 模式 Migration Configuration
虽然可以在 .NET 5 应用程序中使用 System.Configuration.Configuration 管理器,但这是个坏主意。该框架已将新内容与应用程序启动集成在一起,如果您不使用它,您将需要做更多的工作。较新的配置模式更易于使用和部署到多个环境中。如果您有想要移植到 .NET 5 的现有 .NET 经典应用程序,请按照上面的文档进行操作。如果这是一个新应用程序,请检查 Microsoft.Extensions.Configuration 命名空间。
我在使用 Visual Studio 2019 的 .NET 5.0 项目中收到此错误(已在 Community/Student 版和专业版上试用)。
“在命名空间 'System.Configuration' 中找不到类型名称 'ConfigurationManager'。此类型已被转发...”
我找到的许多答案都说您需要添加“using System.Configuration;”以及通过 Project -> Add Reference 添加程序集命名空间作为引用。这个答案没有对我有用,因为没有“参考”文件夹或“项目”选项卡中“添加参考”的任何选项。 引用管理器中也没有“程序集”选项卡。只有“项目”、“共享项目”、“COM”和“浏览”。
如何添加 System.Configuration 作为参考以便我可以使用 ConfigurationManager?
编辑: 虽然这个答案可能会消除错误,但这不是“正确”的答案,因为 .NET 5 不支持 ConfigurationManager。其他答案解释得最好。
在 Visual Studio 2019 中,单击顶部的工具 选项卡。
工具 -> NuGet 包管理器 -> 管理解决方案的 NuGet 包...
搜索“System.Configuration.ConfigurationManager”。
安装到你的项目,错误应该消失了。
.NEt 5 不使用旧的 ConfigurationManager 您需要阅读 json
public IConfiguration Configuration { get; set; }
public Startup(IHostingEnvironment environment)
{
Configuration = new Configuration()
.AddJsonFile("config.json");
}
var options = ConfigurationBinder.Bind<AppSettings>(Configuration);
Console.WriteLine(options.SomeSetting);
更多信息请参考 GitHub.com/aspnet/Options/test/Microsoft.Extensions.Options.Test/OptionsTest.cs
System.Configuration.ConfigurationManager 在 .NET 5 中不受支持。请参阅此处了解如何将具有 web.config 文件的应用程序迁移到 .NET Core 模式 Migration Configuration
虽然可以在 .NET 5 应用程序中使用 System.Configuration.Configuration 管理器,但这是个坏主意。该框架已将新内容与应用程序启动集成在一起,如果您不使用它,您将需要做更多的工作。较新的配置模式更易于使用和部署到多个环境中。如果您有想要移植到 .NET 5 的现有 .NET 经典应用程序,请按照上面的文档进行操作。如果这是一个新应用程序,请检查 Microsoft.Extensions.Configuration 命名空间。