Я создал службу WCF REST (также известную как WebHttp) в .NET 4, используя шаблон службы Microsoft WCF REST 40. Я размещаю службу в IIS 6.
Шаблон службы использует RouteTable в Global.asax как способ создания «чистых» URL-адресов, которые не включают в себя «.svc». Например:
http: // локальный / полеты / 878
GET и POST отлично работают с этим URL-адресом, но PUT и DELETE приводят к HTTP 501, «Не реализовано».
Если я создам простой файл .svc, например:
<%@ ServiceHost Language="C#" Debug="true" Service="MyProject.FlightsService"%>
тогда я могу использовать PUT и DELETE для этого URL:
http: // localhost / flightservice.svc / 878
Кто-нибудь знает, можно ли заставить PUT и DELETE работать с "чистым" URL-адресом выше? Кажется, что нет способа настроить IIS, чтобы разрешить это, потому что нет расширения файла для настройки параметров, и я не хочу разрешать PUT и DELETE глобально.