问题标签 [asp-net-config-builders]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 完整的 .NET Framework 控制台应用程序中的 JSON 配置
我有一个针对 .NET 4.7.1 的控制台应用程序。我正在尝试在我的 .Net Framework 应用程序中使用类似 .net core 的配置。我的`App.config 是:
我有一个文件config.json
,其属性“始终复制”设置为True
. config.json
好像:
然后,在我的main
方法中,我尝试读取一个配置值,例如:
但是, 的值config
始终为空。我尝试了以下方法:
- 尝试更改
jsonFile
为~/config.json
; - 尝试提供一个非常基本的键值(平面)json配置,同时设置
jsonMode
为平面的默认值;
但是,无法使配置正常工作。我该如何解决这个问题?
c# - 配置生成器 - 无法加载程序集 - .Net Framework
我在我的 .Net Framework WebAPI 中使用基于文件的用户机密,并且所有内容都可以正常工作,AppSettings
如下web.config
所示
但是,我现在需要connectionStrings
为 EF 连接添加相同的内容,以下条目在web.config
下面
当我运行应用程序(在 Visual Studio 中)时,我收到以下错误,表明在ConfigurationBuilders
查找某些东西时遇到问题......但我不知道......事情是什么,所有的appSettings
和configurationStrings
正在按预期加载。
如果我删除configBuilders="Secrets"
,则错误不会显示。
那么我错过了什么,我怎样才能找出它试图加载但找不到的东西。
asp.net - .NET 4.7 连接字符串格式的用户机密
我已经挖掘了好几个小时,不断提出有关 .NET Core 的信息,但几乎没有任何关于 .NET 4.7 完整框架的信息。我想出了如何将用户机密添加到我的 Web API 解决方案的主项目中。我得到了基本的 secrets.xml 文件,我需要在其中存储我的数据库用户名和密码或我的连接字符串。我发现的每一篇文章都谈到了您需要对 web.config 进行的更改。但是,在 secrets.xml 文件中没有显示如何处理我的连接字符串、如何格式化它。我可以创建一个名称/值对,但这似乎没有任何作用,我的应用程序无法连接到数据库。
我的 Web.config 中有这个:
我的 secrets.xml 看起来像这样:
如何正确格式化并使其正常工作?
c# - 在子应用程序中阻止 web.config 继承
我们有一个遗留的 .NET 解决方案,它结合了 MVC 和 WebForms 的东西,以及一些 Web API 项目作为网站根目录下的应用程序。显然,这些 Web API 应用程序将继承网站的 web.config 设置。
我们还有另一个项目——限界上下文——用于 SSO 身份验证,它位于同一根文件夹内,因此也继承了网站的 web.config 设置。此限界上下文应用程序是使用 .NET Core 构建的。
我们最近开始使用 Azure Key Vault 来存储我们的机密,并且要在本地使用这些机密,我们正在使用 secrets.xml 文件。所以根网站的web.config看起来是这样的……
这是问题所在:身份验证有界上下文项目抛出异常,因为它找不到Microsoft.Configuration.ConfigurationBuilders.UserSecrets
程序集 - 因为它继承了网站的配置,它需要知道该配置部分的全部内容。
但是,如果在 .NET Core身份验证项目中引用该 NuGet 包,我会收到消息...
此软件包可能与您的项目不完全兼容。
...它会自动回滚。
因此,如果我无法UserSecrets
在 .NET Core 子应用程序中引用程序集,那么如何让它识别<configBuilders>
继承的配置文件中的部分?
我也试过删除元素......
...来自根配置文件,但子应用程序随后会看到该<configBuilders>
元素并且无法识别它。
所以问题归结为:
- 子应用程序需要在其中
<configBuilders>
定义元素的 NuGet 包。
如果不... - 子应用程序看到
<configSections>
/<section name="configBuilders" />
元素并且需要知道它是在哪里定义的。或者,我在子应用程序中
删除该元素,然后...<section name="configBuilders" />
- 子应用程序看到
<configBuilders>
元素并且需要知道哪个配置部分定义了它。
powershell - 如果配置使用 configbuilders,我如何使用 powershell 获取网站的连接字符串?
我使用 powershell 来盘点有关我们内部网站的信息。我跟踪的项目之一是该站点使用的数据库。以前,我使用过这样的 PowerShell 来获取连接字符串:
我现在有一个使用connectionStrings 标记上的configBuilders
属性(https://docs.microsoft.com/en-us/aspnet/config-builder )的新站点,如下所示:
并且 PowerShell 命令会引发此错误:
有没有办法让它适用于在 PowerShell 中使用 configBuilders 或使用 .NET 类的配置?该解决方案需要在站点代码之外工作——它必须在外部访问。
c# - 将 ConfigurationBuilders.Azure 更新到 2.0 Visual Studio 后,不要连接到 KeyVault
我已将项目(WebApi .net 4.7)KeyVault 添加为连接服务。到目前为止一切顺利,它只是在 web.config 中硬编码了 KeyVault 名称。然后,我添加了
Microsoft.Configuration.ConfigurationBuilders.Environment
到项目,从本地环境中读取 KeyVaultName。现在 web.config 看起来像这样:
问题是,升级Microsoft.Configuration.ConfigurationBuilders.Azure
到 2.0 Visual Code 后似乎无法连接到 azure KeyVault。我正在关注本指南https://peterbozso.com/2019/03/18/key-vault-asp-net.html我错过了什么吗?否则此版本将无法在本地环境中使用。我猜在 2.0 中使用包 ConfigBuilder.Azure 部署 api 时会起作用,只是我们希望它也能在本地工作。
我们需要在 2.0 版中使用它,因为它允许从环境中读取变量(https://github.com/aspnet/MicrosoftConfigurationBuilders#appsettings-parameters)
这是将 ConfigBuilder.Azure 升级到 2.0 后的 web.config。
我在想这是我使用 VS2017 的问题,现在切换到 VS2019 没有任何区别。
asp.net - 配置生成器未找到环境变量
调试时查看连接字符串时,值为“abc”;不是我将 Windows 环境变量设置为的值。
网络配置
我已经仔细检查了是否安装了正确的 Nuget 包,框架在 4.7.2 上是否正确,我的拼写是否正确,并且我已经多次阅读了有关Configuration Builders的 Microsoft 文档。