使用.NET代码中的“RoleEnvironment.CurrentRoleInstance.Id
”。确保此代码可以访问ServiceRuntime DLL(通常仅由WebRole或WorkerRole项目引用)。此调用也将在本地模式,非模拟代码中失败,因此try / catch可能是个好主意
编辑:要获取角色中的所有实例,请尝试此操作吗? RoleEnvironment.CurrentRoleInstance.Role.Instances
通过使用以下检查,代码应该在本地和天蓝色中工作
var roleName = Environment.MachineName;
if (RoleEnvironment.IsAvailable)
{
roleName = RoleEnvironment.CurrentRoleInstance.Id;
}