我的Email Web API 2控制器上有一个操作:
[Authorize] [RoutePrefix("api/Email")] public class EmailController : ApiController { //... [HttpDelete] [Route("Remove/{id}")] private void Remove(int id) { _repo.Remove(id); } }
当我使用DELETE http:// localhost:35191 / api / Email / Remove / 35571(或通过任何其他方法)从Fiddler调用操作时,我得到一个500返回的通用IIS错误页面,它没有提供有关错误的信息.
似乎错误发生在我的操作被调用之前,因为在操作中设置断点会导致断点永远不会被命中.
是否需要某种配置才能在IIS(Express)中使用DELETE方法?
我试过在我的web.config中明确允许DELETE:
<add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="GET,HEAD,POST,DEBUG,PUT,DELETE,PATCH,OPTIONS" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />
但无济于事.