У меня есть служба WCF, размещенная в веб-приложении (IIS). Мне нужно выставить 1 конечную точку над wsHttp
, а другую - над netTcp
. Я нахожусь в среде IIS7, которая позволяет мне размещать службы, не основанные на HTTP. В любом случае, когда я просматриваю файл. svc
с помощью браузера, я получаю сообщение об ошибке:
Служба не может быть активирована, поскольку она не поддерживает ASP.NET совместимость. Для этого приложения включена совместимость с ASP.NET
По googling я понял, что WCF работает в двух режимах - совместим с Mixed и ASP.NET. Когда я применяю атрибут
[AspNetCompatibilityRequirements(
RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]
Однако, похоже, что как только я применил этот атрибут к реализации Сервисного Контракта, я не могу использовать привязку без HTTP.
Как настроить его так, чтобы:
- Я могу поддерживать конечные точки без HTTP
- Я могу разместить эту службу в веб-приложении.
- Я не создаю несколько сервисов с включенной совместимостью aspnet, а другой отключен.