- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
我有一个包含一些 Azure 帮助程序类的库。在这些帮助程序类中,我获取了 Azure 帐户名和 key 等设置。在 Azure 中运行时,这些设置是从云配置文件 (cscfg) 中获取的。这一切都运行良好。
为了在 Azure 之外(特别是 RoleEnvironment)对这些类进行单元测试,我在单元测试项目中创建了相同变量名称的设置。这些实际上保存在 app.config 文件中,并通过位于我的测试项目的属性部分下的设置部分进行编辑。我决定使用 CloudConfigurationManager 类,而不是创建自己的从 web.config/app.config 设置中抽象云配置设置的方法。但是,当我运行单元测试时,没有选择任何设置,因此我只是得到空值。但是,如果我将 app.config 文件更改为使用下面“appSettings”格式的设置,那么我确实会获得有效值。这样做的缺点是我无法再使用 Visual Studio 中的设置编辑器页面编辑我的设置。
所以我的问题是我做错了什么,还是这是云配置管理器的限制,它只能获取手动添加的 appSettings,而不能获取使用编辑器添加的 applicationSettings?
<appSettings>
<add key="Foo" value="MySettingValue"/>
</appSettings>
以上有效,而以下无效:
<applicationSettings>
<ComponentsTest.Properties.Settings>
<setting name="Foo" serializeAs="String">
<value>MySettingValue</value>
</setting>
</ComponentsTest.Properties.Settings>
</applicationSettings>
最佳答案
CloudConfigurationManager 仅支持 web.config/app.config 的 AppSettings 部分,并且如果 Azure 配置中缺少该设置,将尝试从此处读取值。该文档指出,如果属性 RoleEnvironment.IsAvailable 为 true(在 Azure 中运行),它不会读取 web.config/app.config,但这是不正确,正如我们在下面的源代码中看到的那样(没有检查 IsAvailable)。
您可以查看source看看会发生什么:
/// <summary>
/// Gets a setting with the given name.
/// </summary>
/// <param name="name">Setting name.</param>
/// <returns>Setting value or null if such setting does not exist.</returns>
internal string GetSetting(string name)
{
Debug.Assert(!string.IsNullOrEmpty(name));
string value = null;
value = GetValue("ServiceRuntime", name, GetServiceRuntimeSetting);
if (value == null)
{
value = GetValue("ConfigurationManager", name, n => ConfigurationManager.AppSettings[n]);
}
return value;
}
如您所见,只有一次对普通 ConfigurationManager 类的调用,该类仅访问 AppSettings。
关于c# - CloudConfigurationManager 未从 app.config 中获取 ApplicationSettings,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11611404/
我的应用程序在开发 PC 上运行良好,但是当我在客户端 PC 上启动它时,出现异常:“配置系统无法初始化”,innerException msg =“无法识别的配置部分 applicationSett
我试图在手机 ApplicationSettings 中保存两个对象列表,但我遇到了一个奇怪的问题(但这可能是我在某处犯了一个愚蠢的错误)。 如果我只保存其中一个列表,它会按预期工作 - 它会保存它,
我正在尝试将此类序列化和反序列化为 Windows Phone ApplicationSettings,但由于某种原因,只有 Items 被保留,而不是 Title 或 LastChanged 属性。
我正在尝试从 app.config 获取我的应用程序中的服务值(value)。我必须将它发送到显示 URL 的应用程序。我在此应用程序中使用的 Web 服务也使用它,因此无法将其移动到 appSett
这个问题在这里已经有了答案: Pros and cons of AppSettings vs applicationSettings (.NET app.config / Web.config) (
我有一个被父(执行)程序集引用的 dll。在父程序集的 app.config 的 ApplicationSettings 部分中,我有一些可以以正常智能感知方式访问的设置(例如 Properties.
我正在使用流畅的 NHibernate。 我有一个包含几个特定键(applicationSettings 和 userSettings)的 app.config 文件。 nhibernate 似乎不喜
我正在阅读有关 applicationSettings 的文章和论坛帖子将近一周了。 在几乎每个线程中,似乎都有人正确地指出,类库在部署时不能有配置文件,并且它们在设计时配置的 application
我有针对多个环境的 web.config 转换。在配置文件中,我有一个 applicationSettings 部分,其中包含多个设置和值对。 我尝试过根据用于匹配名称的语法并更改连接字符串以匹配设置
这个问题在这里已经有了答案: Pros and cons of AppSettings vs applicationSettings (.NET app.config / Web.config) (
我正在使用 .NET 4.0,我想使用 app.config 文件来存储相同的参数设置。我执行以下操作。我使用项目属性中的 Settings 选项卡来创建我的参数。 这会将信息添加到 app.conf
我在 app.config 中存储了我的应用程序配置,通过 Visual Studio 我在项目属性对话框的设置选项卡上创建了一些应用程序 key ,然后我在应用程序级别设置了这个 key (不是在用
在 asp.net web.config 文件中,您可以执行 它将在 local.appSettings.config 中查找对 foo/bar 设置的任何覆盖。 application
我正在编写一个 WP7 (Mango) 应用程序。我将值存储在 WP7isolatedStorageSettings.ApplicationSettings 中,然后调用 IsolatedStorag
是否可以访问 applicationSettings 中的值?部分加载 app.config 文件? 我找到了一个例子 How do I retrieve appSettings ,但我不知道如何访问
我可以强制 dll 重新加载其配置吗? 在我的 VB 库中,我使用此配置: This is an entry 从代码中访问“M
我有一个问题,我对 ApplicationSettings 所做的更改似乎没有在我的 AudioPlayerAgents ApplicationSettings 中更新,这应该是相同的?! 我的程序是
这是一个有趣的奇怪行为(阅读:错误)。我的简单测试应用程序中有以下两种方法: private void Save() { var settings = Isolated
我正在为我们构建的 Web 应用程序创 build 置。不,我有一个配置文件,看起来像这样,其中包含一个“appSettings”部分和一个“applicationSettings”部分:
在 TeamCity 中转换 web.config 文件时出现以下错误。它发生在元素上, . No element in the source document matches '/configura
我是一名优秀的程序员,十分优秀!