2010-09-19 9 views
6

Stworzyłem restfull usługi WCF w .NET 4 i opublikowałem go w IIS 7.5/Windows 7 x86. Czasowniki GET i POST działało w porządku, ale DELETE i PUT dał błąd:Problemy z WebDav dla restfull usługi WCF

Error: The remote server returned an error: (405) Method Not Allowed. 

Po googlowania (sporo), znalazłem się, że problem jest spowodowany przez moduł WebDav którym jest zainstalowany (automatycznie? dunno) w IIS. Jedynym podejściem, które zadziałało dla mnie, było to, które znaleziono here.

Jednak usunięcie modułu webdav z całej witryny jest w pewnym sensie zbyt nachalne. Czy ktokolwiek zna inne podejście do blokowania działania filtrującego na czasowniki nałożone przez webdav, ale tylko dla określonej aplikacji WWW, a nie dla całej witryny?

Dziękuję.

EDIT wiem o missing put and delete still leads to restful service - ale Ciągle chcąc pozwolić tych czasowników.

Odpowiedz

12

Nie trzeba usuwać modułu dla całej witryny. Możesz skonfigurować moduły dla każdej aplikacji. Sekcja modułów jest dostępna w konsoli zarządzania na aplikację.

Naprawdę musisz usunąć WebDav dla aplikacji usługi REST, ponieważ czasowniki PUT i DELETE zostały wcześniej zdefiniowane dla WebDav i są automatycznie pobierane przez WebDav.

+3

+1: True ... Dodałem: lmsasu