我有一个 .NET 4.8 (VB) 中的旧版 Web 应用程序。我需要添加秘密文件并从中读取值。
在 web.config 中,我添加了以下内容:
<configuration>
<configSections>
<section name="configBuilders"
type="System.Configuration.ConfigurationBuildersSection,
System.Configuration, Version=4.0.0.0, Culture=neutral,
PublicKeyToken=b03f5f7f11d50a3a"
restartOnExternalChanges="false" requirePermission="false" />
</configSections>
<configBuilders>
<builders>
<add name="Secrets" userSecretsId="0c09afe4-6f59-4293-962b-2aad41d88772" type="Microsoft.Configuration.ConfigurationBuilders.UserSecretsConfigBuilder, Microsoft.Configuration.ConfigurationBuilders.UserSecrets, Version=1.0.0.0, Culture=neutral" />
</builders>
</configBuilders>
然后创建secret.xml文件:
<?xml version="1.0" encoding="utf-8"?>
<root>
<secrets ver="1.0">
<secret name="Value1" value="someexampletext" />
</secrets>
</root>
然后我试图获取这个值:
Dim s2 As String = ConfigurationManager.AppSettings("Value1")
但是得到
Nothing
(与 null 相同)。
我认为因为我将其添加到 web.config 中的配置中,所以我可以使用 ConfigurationManager 读取它,对吗?
我错过了什么吗?
将密钥添加到 web.config 中的 appSettings 可以解决问题:
<appSettings configBuilders="Secrets">
<add key="Value1" value=""/>
</appSettings>