我目前在通过 VS2010 和 Cassini运行Jessica应用程序时遇到问题。下面的代码是我正在运行的代码,但是当我尝试使用 PUT 或 DELETE 动词时,我得到一个 405 Method Not Allowed 响应。我尝试了ASP.NET MVC 在 HTTP DELETE 请求上出现 405 错误建议的答案?但这对我不起作用。我还复制了我的最小 web.config
<?xml version="1.0"?>
<configuration>
<system.web>
<compilation debug="true" targetFramework="4.0" />
</system.web>
<system.webServer>
<modules runAllManagedModulesForAllRequests="true" />
</system.webServer>
</configuration>
代码
public class UserModule : JessModule
{
public UserModule() : base("/user")
{
Get("/", r => View("list", UserRepository.GetAllUsers()));
Post("/", r =>
{
AddUser(new User { EmailAddress = r.EmailAddress, Name = r.Name });
return Response.AsRedirect("/user");
});
Get("/edit/:id", r => View("edit", UserRepository.GetUser(int.Parse(r.id))));
Put("/:id", r =>
{
EditUser(r.id, new User { EmailAddress = r.EmailAddress, Name = r.Name });
return Response.AsRedirect("/user");
});
Delete("/:id", r =>
{
DeleteUser(r.id);
return Response.AsRedirect("/user");
});
}
}