【发布时间】:2014-10-20 17:41:24
【问题描述】:
我的服务部署到几个不同的环境(多个开发环境以及生产环境)。服务代码需要在运行时找出当前部署的URL。
是否有一种简单的方法可以检索 Azure 角色的面向外部的 URL?如果 Web 角色正在处理请求,则可以直接查看 HttpContext.Current.Request 并找出 URL。但是我还没有找到一种方法来为工人角色做到这一点。您可能认为有办法从 RoleEnvironment 获取此信息,但我能找到的最接近的东西 (RoleEnvironment.CurrentRoleInstance.RoleInstanceEndpoints) 似乎返回内部 IP/端口信息,而不是面向外部的 DNS 名称。
我总是可以将部署 URL 存储在 ServiceConfiguration 键中(即,将其静态存储在每个 ServiceConfiguration.???.cscfg 中),但我希望避免在配置文件中硬编码。有没有办法以编程方式做到这一点?
【问题讨论】: