小编Meh*_*any的帖子

找不到配置文件“secrets.json”并且不是可选的(.NET 6)

当不应预期有 Secrets.json 文件时,CI/CD 管道中会生成用户机密错误。

脚步:

  1. 创建.NET 5项目
  2. 添加了用户机密。
  3. 代码在本地和 CI/CD 管道中运行。
  4. 升级到 .NET 6 项目(并预览 NuGet 6.* 包)

代码在本地运行,但在 CI/CD 管道中失败,并出现错误:

“找不到配置文件‘secrets.json’并且不是可选的。”

预期的:

代码在没有 Secrets.json 文件的情况下运行配置 .NET 6,Microsoft.Extensions.Configuration.UserSecrets:6.0.0-preview.1.21102.12

回归?这适用于 .NET 5,Microsoft.Extensions.Configuration.UserSecrets:5.0.0.*

System.IO.FileNotFoundException: The configuration file 'secrets.json' was not found and is not optional. The physical path is '/home/runner/work/UserSecretsRegression/UserSecretsRegression/UserSecrets/UserSecrets.Tests/bin/Release/net6.0/secrets.json'.
  Stack Trace:
      at Microsoft.Extensions.Configuration.FileConfigurationProvider.HandleException(ExceptionDispatchInfo info)
   at Microsoft.Extensions.Configuration.FileConfigurationProvider.Load(Boolean reload)
   at Microsoft.Extensions.Configuration.FileConfigurationProvider.Load()
   at Microsoft.Extensions.Configuration.ConfigurationRoot..ctor(IList`1 providers)
   at Microsoft.Extensions.Configuration.ConfigurationBuilder.Build()
   at UserSecrets.Tests.UnitTest1.TestMethod1() in /home/runner/work/UserSecretsRegression/UserSecretsRegression/UserSecrets/UserSecrets.Tests/UnitTest1.cs:line 13
Run Code Online (Sandbox Code Playgroud)

.net c# .net-6.0

22
推荐指数
2
解决办法
2万
查看次数

标签 统计

.net ×1

.net-6.0 ×1

c# ×1