我正在编写一个ASP.NET MVC 2.0应用程序,该应用程序要求用户在对项目进行投标之前登录.我正在使用actionfilter来确保用户已登录,如果没有,则将它们发送到登录页面并设置返回URL.下面是我在动作过滤器中使用的代码.
if (!filterContext.HttpContext.User.Identity.IsAuthenticated) { filterContext.Result = new RedirectResult(String.Concat("~/Account/logon","?ReturnUrl=",filterContext.HttpContext.Request.RawUrl)); return; }
在我的登录控制器中,我验证用户凭据,然后将其签名并重定向到返回URL
FormsAuth.SignIn(userName,rememberMe); if (!String.IsNullOrEmpty(returnUrl)) { return Redirect(returnUrl); }
我的问题是,这将始终使用Get(HttpGet)请求,而我的原始提交是一个帖子(HttpPost),应该始终是一个帖子.任何人都可以建议一种传递此URL的方法,包括HttpMethod或任何解决方法,以确保使用正确的HttpMethod?