Для хостинга службы IIS я должен получить полный адрес локальной машины.Получить DNS-запись локального хоста для службы
В Web.config, что значение отлично сконфигурирован
<services>
<service name="MyService.Service.MyService">
<endpoint address="" behaviorConfiguration="MexFlatWsdlBehavior"
binding="basicHttpBinding" bindingConfiguration="secureHttpBinding"
name="TpsNotification" bindingNamespace="http://org.com/MyService/2014/11"
contract="MyService.Service.ISomeEndpoint">
<identity>
<dns value="THESERVER.myorg.net" />
</identity>
</endpoint>
<endpoint address="" behaviorConfiguration="MexFlatWsdlBehavior"
binding="basicHttpBinding" bindingConfiguration="secureHttpBinding"
name="TpsPluginFramework" bindingNamespace="http://org.com/MyService/2014/11"
contract="MyService.Service.IOtherEndpoint">
<identity>
<dns value="THESERVER.myorg.net" />
</identity>
</endpoint>
<host>
<baseAddresses>
<add baseAddress="https://THESERVER.myorg.net:443/MyService.svc" />
</baseAddresses>
</host>
</service>
</services>
Любой из значения Dns или BaseAddress будет прекрасно. Но я не вижу возможности получить эту ценность от IIS.
Я пробовал ConfigurationManager
и WebConfiguration
и HostingEnvironment
.
Кроме того, я попытался
var hostName = System.Net.Dns.GetHostName();
, который работает в некоторых случаях, но не для этого сервера, поскольку заданный адрес не является основным адресом DNS, который вернулся сюда.
Любые варианты?
Это во время настройки/запуска. Нет OperationContext, HttpContext, Request, ... –