2012-09-06 9 views
5

Mein Dienst wird in verschiedenen Umgebungen bereitgestellt (mehrere Entwicklungsumgebungen sowie die Produktion). Der Dienstcode muss zur Laufzeit die URL der aktuellen Bereitstellung ermitteln.Abrufen der DNS-URL für die Azure-Rolle (Arbeit)

Gibt es eine einfache Möglichkeit, die nach außen gerichtete URL für eine Azure-Rolle abzurufen? Wenn eine Webrolle eine Anforderung verarbeitet, können Sie die HttpContext.Current.Request aufrufen und die URL auslesen. Aber ich war nicht in der Lage, einen Weg zu finden, dies für eine Arbeiterrolle zu tun. Sie würden denken, dass es einen Weg gibt, um dies von der RoleEnvironment zu bekommen, aber die nächste Sache, die ich finden kann (RoleEnvironment.CurrentRoleInstance.RoleInstanceEndpoints) scheint interne IP/Portinformationen zurückzugeben, nicht den nach außen gerichteten DNS-Namen.

Ich könnte die Deployment-URL immer in einem ServiceConfiguration-Schlüssel speichern (d. H. Statisch in jeder ServiceConfiguration.???.cscfg), aber ich hatte gehofft, dies in den Konfigurationsdateien nicht fest codieren zu müssen. Gibt es eine Möglichkeit, dies programmgesteuert zu tun?

Antwort

Verwandte Themen