在带有Azure 1.4 SDK的VS2010 SP1上
在Page_Load of default.aspx.cs中创建一个新的Azure项目和一个Web角色添加:
string id = RoleEnvironment.CurrentRoleInstance.Id;
Response.Write("CurrentRoleInstance.Id: " + id);
这样可行,现在将实例数更改为2或更多。
角色发现数据不可用“InvalidOperationException”
为什么会这样?
这适用于部署到Azure。
答案 0 :(得分:0)
在Azure计算模拟器上运行您的应用程序吗?未在Azure实例或计算机模拟器上运行时发生此错误。
如果可能,您可以更改page_load方法:
protected void Page_Load(object sender, EventArgs e)
{
if (RoleEnvironment.IsAvailable)
{
string id = RoleEnvironment.CurrentRoleInstance.Id;
if (RoleEnvironment.IsEmulated)
{
Response.Write("(Emulator) CurrentRoleInstance.Id: " + id);
}
else
{
Response.Write("(Azure Platform) CurrentRoleInstance.Id: " + id);
}
}
else
{
Response.Write("Not run on azure environment");
}
}