我们有一个 MVC 5.1 项目并且正在使用属性路由。除了上面有登录表单的默认页面外,一切正常。
[RoutePrefix("Home")]
public class HomeController : BaseController
{
[Route("~/")]
[Route]
[Route("Index")]
[HttpGet]
public ActionResult Index()
{
var model = new LoginViewModel();
return View(model);
}
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Index(String Username, String Password)
表单通过 GET 很好地显示,但在 POST 时我们得到......
HTTP 错误 405.0 - 方法不允许
您正在查找的页面无法显示,因为正在使用无效的方法(HTTP 动词)。
通常默认路由会处理 POST 和 GET 都很好。
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}/{dealerId}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
显然,我在默认路由上的帖子路由上遗漏了一些东西,因为其他页面上的后续帖子工作正常。
有人做过吗?
谢谢,