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

MAUI获取用户机密返回null,操作无误仍无法解决求助

.NET用户机密无法通过Environment.GetEnvironmentVariable读取的问题解决

核心问题:用户机密不会自动注入到系统环境变量中,所以直接调用Environment.GetEnvironmentVariable("con")肯定拿不到值,得通过.NET的配置系统来读取。

解决步骤

1. ASP.NET Core项目(默认已集成用户机密)

直接通过IConfiguration读取即可,无需额外配置:

// 在Program.cs中读取
var builder = WebApplication.CreateBuilder(args);
var con = builder.Configuration["con"];

// 或者在控制器/服务中注入IConfiguration读取
private readonly IConfiguration _config;

public YourController(IConfiguration config)
{
    _config = config;
}

public IActionResult SomeAction()
{
    var con = _config["con"];
    // ...
}

2. 控制台/非Web项目

需要手动添加配置依赖并配置用户机密源:

  • 先安装NuGet包:Microsoft.Extensions.Configuration.UserSecrets
  • 然后在代码中构建配置:
using Microsoft.Extensions.Configuration;

var configBuilder = new ConfigurationBuilder()
    .AddUserSecrets<Program>() // 这里的Program是你的入口类,会自动关联csproj中的UserSecretsId
    .Build();

var con = configBuilder["con"];

额外注意点

  • 你已经正确配置了UserSecretsId和机密文件,这部分没问题
  • 用户机密仅在开发环境生效,生产环境不会加载该配置源

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.20 21:32:07