ASP.Net Core - 配置管理器无法从Web.config加载数据

3
我正在将一个应用程序从.Net Framework迁移到.Net Core,并尝试使用System.Configuration.ConfigurationManager包中的ConfigurationManager从Web.config获取连接字符串。问题在于它只包含来自machine.config的默认连接字符串。我知道ASP.Net Core使用appsettings.json和IConfiguration作为默认配置管理方式,但据我所知, System.Configuration.ConfigurationManager包是为了简化迁移而添加的。那么正确的方法是使用ConfigurationManager从Web.config获取数据,而不是全局的machine.config吗?
Web.config内容:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <connectionStrings>
    <add name="My" connectionString="sample data" />
  </connectionStrings>
</configuration>
1个回答

3
似乎文件必须命名为App.config,即使是Web应用程序。将Web.config重命名为App.config后,它会被正确读取。

ASP.NET Core中的连接字符串通常不存储在Web.config中。 ASP.NET Core可以在没有IIS的情况下使用,但只有IIS会关心Web.config。因此,那不是一个安全的地方。有许多存储敏感数据并通过_Configuration_以一致的方式检索它的方法。 - Daniel Schmid
就像我所说的,我了解ASP.Net和ASP.Net Core之间管理配置变化的情况,但对于大型项目的迁移,逐步进行会更容易些。 - Random
我完全同意这个。 - Daniel Schmid

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接