我使用asp.net 4.0和C#.NET 有沒有辦法知道,通過提供的applicationID或webrole名(或兩者),並知道有多少實例存在於perticular webrole?有沒有辦法知道當前有多少個webrole實例?
是否有任何可用的API,所以我可以用C#.NET代碼?
我使用asp.net 4.0和C#.NET 有沒有辦法知道,通過提供的applicationID或webrole名(或兩者),並知道有多少實例存在於perticular webrole?有沒有辦法知道當前有多少個webrole實例?
是否有任何可用的API,所以我可以用C#.NET代碼?
是,
foreach (var roleDefinition in RoleEnvironment.Roles)
{
foreach (var roleInstance in roleDefinition.Value.Instances)
{
Trace.WriteLine("Role instance ID: " + roleInstance.Id, "Information");
}
}
您最好的選擇是使用服務管理REST API(http://msdn.microsoft.com/en-us/library/ee460806.aspx)的。還可以看看下面的線程:SDK for Service Management API。
注意:這裏假設你在同一個「部署」中運行,所以在Azure上 - 如果你想檢查任意部署,你需要(1)配置管理證書,(2)獲取部署ID ,(3)使用Gaurav's Answer中發佈的管理API。 –