。NET 4.7连接字符串格式的用户秘密

问题描述 投票:0回答:2

我已经花了几个小时的时间,不断提供有关.NET Core的信息,但几乎没有有关.NET 4.7完整框架的信息。我想出了如何将User Secrets添加到Web API解决方案的主项目中。我得到了基本的secrets.xml文件,需要在其中存储数据库用户名和密码或连接字符串。我发现的每个帖子都谈到了您需要对web.config进行的更改。但是,在secrets.xml文件中没有显示如何处理我的连接字符串,如何设置其格式。我可以创建一个名称/值对,但是似乎什么也没做,我的应用无法连接到数据库。

我在Web.config中有此文件:

  <configBuilders>
    <builders>
    <add name="Secrets" userSecretsId="5c65f7eb-a7e1-46cc-bff4-a526678005f2" type="Microsoft.Configuration.ConfigurationBuilders.UserSecretsConfigBuilder, Microsoft.Configuration.ConfigurationBuilders.UserSecrets, Version=1.0.0.0, Culture=neutral" /></builders>
  </configBuilders>

  <connectionStrings configBuilders="Secrets">
    <add name="ShopAPDbConnectionString" connectionString="" providerName="System.Data.SqlClient" />
  </connectionStrings>

我的secrets.xml看起来像这样:

<?xml version="1.0" encoding="utf-8"?>
<root>
  <secrets ver="1.0">
    <secret name="ShopAPDbConnectionString" value="Server=SQLDEV01;Database=ShopAP; Integrated Security=True;" />
  </secrets>
</root>

如何正确格式化并使其正常工作?

asp.net .net web-config connection-string
2个回答
0
投票

[我试图做同样的事情,但是不幸的是,我认为这仅适用于涉及.Net Framework / Web.config的appSettings。


0
投票

也许会帮助您:

  1. 在web.config中,将连接字符串定义为:

    <connectionStrings configSource="secretConnectionStrings.config" /> 
    

    您可以在configSource中将完整路径设置为任何秘密文件

  2. 像这样添加secretConnectionStrings.config:

    <connectionStrings>
      <add name="ShopAPDbConnectionString" value="Server=SQLDEV01;Database=ShopAP;  Integrated Security=True;" />
    </connectionStrings>
    
© www.soinside.com 2019 - 2024. All rights reserved.