繁体   English   中英

VS2022 配置 Azure keyvault 看不到本地 secrets.json

[英]VS2022 Configure Azure keyvault not seeing local secrets.json

我想使用 Azure KeyVault 构建一个新的 .net 核心控制台应用程序。 我使用连接服务向导并选择 azure keyvault。 它识别出我可以访问的保险库实例,但随后出现如下配置页面:

在此处输入图像描述

保存连接字符串显示 none 作为可能的选项。 我为本地机密配置了本地 secrets.json。 为什么我不能选择这个作为选项? 如何让向导在这里识别某些东西?

• 据专家介绍, Visual Studio 2022 中可能存在错误,导致'secrets.json'文件未保存,因为这在Visual Studio 2019中不会发生。 由于仅由于此错误,您可能无法在创建.Net 核心控制台应用程序期间引用“本地 secrets.json”文件。

您可以在此处向 Microsoft 支持报告 Visual Studio 社区上的此错误:- https://visualstudio.microsoft.com/support/ 同时,您可以参考以下替代解决方案,通过environment variable引用您创建的“local secrets.json”文件。 要覆盖单个计算机上的AppSettings:ConnectionStrings设置,每个用户都需要添加一个同名的用户密码。 最简单的方法是对项目使用 Visual Studio 中的“管理用户机密”选项。

• 这本身将为机密创建一个新的空JSON文件,并存储在'C:\Users\<username>\AppData\Roaming\Microsoft\UserSecrets\<id>'与您的Windows user匹配,并且是randomly generated GUID 此外,由于此文件位于您的项目目录之外,您必须通过向“csproj”文件添加bit of markup to the 'csproj'文件绑定到您的项目,如下所示: -

  <PropertyGroup>
  <UserSecretsId>dda25df4-9a88-4a7e-8502-2134b74e4729</UserSecretsId>
  </PropertyGroup>

最后,要覆盖'AppSettings:ConnectionString'设置,请在secrets.json文件中添加类似的结构,如下所示,并将其放在项目的根目录中。

   {
     "AppSettings:ConnectionString": "http://localhost:9000?user=username&password=1234"

}

有关这方面的更多详细信息,请参阅下面的社区讨论:-

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM