2012-09-06 99 views
5

我的服務部署到幾個不同的環境(多個開發環境以及生產環境)。服務代碼需要在運行時找出當前部署的URL。檢索Azure(工作)角色的DNS URL

有沒有簡單的方法來檢索Azure角色的外部URL?如果一個web角色正在處理一個請求,那麼直接看一下HttpContext.Current.Request並找出URL即可。但我一直無法找到一種方法來爲工作人員角色做這件事。你會認爲有一種方法可以從角色環境中獲得此信息,但是我能找到的最接近的東西(RoleEnvironment.CurrentRoleInstance.RoleInstanceEndpoints)似乎返回內部IP /端口信息,而不是外部DNS名稱。

我始終可以將部署URL存儲在ServiceConfiguration項中(即將其靜態存儲在每個ServiceConfiguration.??.cscfg中),但我希望避免在配置文件中對此進行硬編碼。有沒有什麼辦法來以編程方式做到這一點?

回答