WCF 4.0 - Как перенаправить старый сервисный URL на новый сервисный URL? - PullRequest
2 голосов
/ 01 июня 2011

У меня есть старый WCF 3.5 RESTful сервис, который был по адресу:

http://www.mydomain.com/rest/Service.svc

Я перенес свою службу в службу RESTful WCF 4.0, которая теперь находится по адресу:

http://www.mydomain.com/rest/Service

Из-за новой маршрутизации WCF 4.0 в Global.asax он автоматически удаляет расширение .svc для меня. Я искал способ направить старый базовый URL на новый базовый URL. Мне нужно принять во внимание, что после названия службы, очевидно, будет больше, например

Service.svc/MyEndpoint?param1=param1Val

Возможно ли это, и если да, то какой самый лучший / наиболее эффективный способ выполнить эту задачу?

Спасибо за любой совет.

1 Ответ

1 голос
/ 01 июня 2011

Вы по-прежнему можете иметь как файл .svc, так и активацию на основе маршрута, для один и тот же класс обслуживания , поэтому запросы на оба адреса вызовут запуск службы. Конечная точка из .svc будет определена либо с помощью атрибута Factory в директиве <% @ ServiceHost%>, либо через web.config, а конечная точка из маршрута (без svc) будет определена с использованием фабрики, зарегистрированной в ServiceRoute .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...