You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

.NET 4.8(VB)遗留Web应用读取密钥文件值返回Nothing问题

解决.NET 4.8 VB遗留Web应用读取用户密钥失败的问题

你遗漏了将配置构建器关联到appSettings节点的核心步骤,同时还有几处细节需要修正:

  • 关联配置构建器到appSettings
    在web.config的<appSettings>节点上添加configBuilders属性,指定使用你定义的"Secrets"构建器:

    <configuration>
      <!-- 已有的configSections和configBuilders配置保留 -->
      <appSettings configBuilders="Secrets">
        <!-- 原有AppSettings项可保留,密钥会自动合并覆盖 -->
      </appSettings>
      <!-- 其他配置节点 -->
    </configuration>
    
  • 确认安装必要的NuGet包
    必须安装Microsoft.Configuration.ConfigurationBuilders.UserSecrets包,这是配置构建器运行的依赖:

    Install-Package Microsoft.Configuration.ConfigurationBuilders.UserSecrets -Version 1.0.0.0
    
  • 修正密钥文件的路径和名称

    • 文件名必须是secrets.xml(你当前命名为secret.xml,缺少末尾的"s",这会导致系统无法找到文件)
    • 文件必须放在指定路径:%APPDATA%\Microsoft\UserSecrets\0c09afe4-6f59-4293-962b-2aad41d88772\secrets.xml(替换为你配置的userSecretsId对应的文件夹)
  • 验证读取代码
    你的VB读取代码本身是正确的,确保项目已引用System.Configuration程序集,并导入命名空间:

    Imports System.Configuration
    
    Dim s2 As String = ConfigurationManager.AppSettings("Value1")
    

完成以上步骤后,重新运行应用即可正确读取到密钥值。

内容的提问来源于stack exchange,提问作者Alexan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.27 00:42:51