2010-09-19 92 views
6

我在.NET 4中创建了一个WCF restfull服务,并且我在IIS 7.5/windows 7 x86下发布了它。动词GET和POST工作得很好,但DELETE和PUT给了一个错误:WebDav麻烦for restfull WCF网络服务

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

谷歌搜索(很多)之后,我发现,这个问题是由它(自动安装的WebDav模块引起的?不知道)在IIS中。唯一适用于我的方法是发现here

但是,在我看来,从整个网站中删除webdav模块有点太侵入。有谁知道另一种方法来抑制webdav强加的动词过滤动作,但仅限于特定的Web应用程序,而不是整个网站?

谢谢。

编辑 我知道missing put and delete still leads to restful service - 但我一直想让这些动词。

回答

12

您不需要为整个站点删除模块。您可以根据应用程序配置模块。模块部分可在每个应用程序的管理控制台中使用

你真的必须删除WebDav for REST服务的应用程序,因为PUT和DELETE动词以前是为WebDav定义的,并被WebDav自动使用。

+3

1:真...我已经加入: <模块runAllManagedModulesForAllRequests = “真”> <除去名称= “WebDAVModule”/> – lmsasu 2010-09-19 08:59:53