4

在我将 ASP.NET WebRole 部署到 Azure 并查看 Azure Intellitrace 后,我注意到很多 RoleEnvironment 异常,它们发生在 RoleEnvironment.IsEmulated。

我认为 ServiceConfiguration 中缺少某些内容,因为 stacktrace 中的倒数第二个调用始终是 RoleEnvironment.GetConfigurationSettingValue。

现在我搜索了这个问题,但除了这个链接我什么也没找到:

http://bretstateham.com/azure-serviceconfiguration-cscfg-changes%E2%80%A6/

但是我的服务配置是正确的。我认为设置?IsSimulationEnvironment?应该由 Azure 创建,但在我的情况下不是因为异常。

我不能把“?IsSimulationEnvironment?” 在我的配置中手动设置,因为这不符合服务配置的 xml 命名空间。

有人知道如何解决这个烦人的问题吗?

4

1 回答 1

0

我认为您的 RoleEnvironment 尚不可用。即你在初始化之前检查 RoleEnvironment.IsEmulated ......

尝试这个,

while (!RoleEnvironment.IsAvailable)
     continue;//you can sleep sometime then continue
if (RoleEnvironment.IsEmulated)
{
  //Your code here
}
于 2013-05-13T07:20:33.220 回答