Asp.Net Core MVC:在secrets.json中找不到设置

时间:2019-06-15 19:37:19

标签: asp.net-core-mvc asp.net-core-2.2

我有一个~/.microsoft/usersecrets/[UUID]/secrets.json文件,其中包含连接字符串:

{
  "ConnectionStrings": {
    "PHCS": "Server=XXX;Database=XXX;Trusted_Connection=False;User Id=XXX;Password=XXX"
  }
}

它被符号链接到项目目录中。

应用程序启动时,正在加载设置:

string connectionString = Configuration.GetConnectionString("PHCS");
services.AddDbContext<PHCSDbContext>(options => options.UseSqlServer(connectionString));

Visual Studio for Mac 2019(8.1 build 2741)告诉我我需要将.Net Core升级到2.2.300。

这样做之后,connectionString为空:

string connectionString = Configuration.GetConnectionString("PHCS");

没有其他改变。

**编辑**

我可以添加一个新秘密:

$ dotnet user-secrets set "FOO:BAR" "BAX"

并列出其内容:

$ dotnet user-secrets list
FOO:BAR = BAZ
ConnectionStrings:PHCS = Server=XXX;Database=XXX;Trusted_Connection=False;User Id=XXX;Password=XXX

.csproj文件中设置的情况:

<UserSecretsId>A01CF70D-DBDA-4CE8-8B06-3684869DC85F</UserSecretsId>

匹配目录的大小写:

~/.microsoft/usersecrets$ ls -al
A01CF70D-DBDA-4CE8-8B06-3684869DC85F/

如果有帮助,则说明文件的编码:

$ file secrets.json 
secrets.json: UTF-8 Unicode (with BOM) text

我还尝试创建一个新的GUID并使用它来生成新的目录结构。仍然不起作用。

** / edit **

只需将设置移入项目的appsettings.json文件中,有没有办法解决此问题?

0 个答案:

没有答案