【发布时间】:2014-04-13 01:37:28
【问题描述】:
所以我编写了一个 Azure 辅助角色和一些单元测试来验证它是否按预期工作。问题是 CloudConfigurationManager.GetSetting 总是返回 null。
在运行任何单元测试之前调用以下 WorkerRole 方法:
public override bool OnStart()
{
string connectionString = CloudConfigurationManager.GetSetting("StorageConnectionString");
var account = CloudStorageAccount.Parse(connectionString);
...
}
我使用 Visual Studio 的设置 gui 来实际设置连接字符串属性(本地和云部署的不同属性),因此我知道 cscfg 文件应该是有效的。 本地 ServerAgent 设置如下所示:
<Role name="ServerAgent">
<Instances count="1" />
<ConfigurationSettings>
<Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString" value="UseDevelopmentStorage=true" />
<Setting name="StorageConnectionString" value="SUPER SEKRET" />
</ConfigurationSettings>
所以我想问题是,CloudConfigurationManager 如何找到正确的 cscfg 文件?单元测试项目采用对 ServerAgent 项目的引用,但 ServerAgent 项目不采用对 CloudService 项目的任何形式的引用。
【问题讨论】:
标签: c# unit-testing azure visual-studio-2013