nas*_*ski 14 c# visual-studio visual-studio-2022
我知道这仍处于预览阶段,但我只是想确保我没有做任何错误的事情,因为我过去做过类似的事情。我在属性中设置了环境变量:

我正在尝试设置我的测试:
[TestInitialize]
public void Initialize()
{
var test = Environment.GetEnvironmentVariables();
// test enumerates all the Env variables, don't see it there
var connectionString = Environment.GetEnvironmentVariable("CONNECTION_STRING");
if (string.IsNullOrWhiteSpace(connectionString)) // so this is obviously null
throw new ArgumentNullException("CONNECTION_STRING");
_ConnectionString = connectionString;
}
Run Code Online (Sandbox Code Playgroud)
正如您从我的评论中看到的,未找到/加载环境变量。
我缺少什么?谢谢。
小智 15
我假设您使用的是 Visual Studio 2022,因为您使用的是 .NET 6 和最小主机(即 no Startup.cs)?
一般偏好是不要将信息存储在环境变量中,因为这些信息通常会上传到 GitHub,并且可能会被搜索并用于对您不利。
对于本地开发机密,首选是使用secrets.json文件存储这些机密。有关如何执行此操作的信息,请参阅安全存储机密,以及有关访问配置文件的详细信息,请参阅访问配置文件信息。
对于 TL;DR: Crowd,以下步骤可能会有所帮助(这是我在使用 .NET 6 的 Blazor 应用程序中所做的操作):
secrets.json文件并打开它。它还会在您的项目磁贴中添加UserSecretsId.Secrets.json服务。IConfiguration控制器并将其保存到字段中。{yourConfigurationFieldName}.GetValue<string>({yourJsonKey})
Run Code Online (Sandbox Code Playgroud)
在 Visual Studio 2022 中,您可以通过修改 launchSettings.json 文件的以下部分来访问开发中的环境变量。
"environmentVariables": { "ASPNETCORE_ENVIRONMENT": "开发", "VaultUri": "https://xxx.vault.azure.net/", "AZURE_USERNAME": "xxx@user.com" }
其中 VaultUri 是环境变量的名称。
| 归档时间: |
|
| 查看次数: |
39294 次 |
| 最近记录: |