У меня есть служба WCF, размещенная в IIS, и я хочу сделать ее доступной в нескольких доменах, используя несколько привязок IIS в одном веб-приложении. Пример:
Используя .Net Framework 4 и его атрибут multipleSiteBindingsEnabled
, служба успешно активируется. Однако только одна IIS-привязка используется в качестве базового адреса для ServiceHost
, а свойства в OperationContext
всегда содержат этот адрес независимо от того, какое имя хоста использовалось для совершения вызова.
Итак, мой вопрос: В методе службы, как я могу получить фактическое имя хоста, которое использовалось для вызова?
Я знаю, что мог бы использовать HttpContext
с режимом совместимости ASP.NET для получения фактического URL запроса, но мне было интересно, есть ли другой (лучший?) Способ.