ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

C#-HTTPPost无法在ASP MVC 3中运行

2019-11-02 22:07:57  阅读:181  来源: 互联网

标签:http-post asp-net-mvc-2 c asp-net-mvc-3


我真的很困惑
这是代码:

 [HttpPost]
    public ActionResult Settings(string SubmitButton)
    {
        if (SubmitButton == "Sign In") {
            ServiceLocator.Current.GetInstance<IAppContext>().LoggedUser = null;
            Response.Cookies["loginuser"].Expires = DateTime.Now;
            return RedirectToAction("Logon", "Account");
        }
        if (SubmitButton == "Sign Up") { return RedirectToAction("register", "Account"); }
        if (SubmitButton == "Change Default Ride Settings") { return RedirectToAction("changeSettings", "Home"); }
        return View();
    }

该视图包含

<% using (Html.BeginForm()) {  %>

   Three input ,

<% } %>

控制器不使用httppost触发,而是使用httpget触发

解决方法:

您可能需要在视图中的Html.BeginForm()中传入控制器和动作名称.由于正在为HTTP get请求调用[HttpPost] Settings()操作,因此这意味着没有另一个针对get请求的Settings()操作,因此,我猜测您的视图是通过其他操作提供的.在这种情况下,您需要在Html.BeginForm()中显式设置控制器和操作.尝试这个:

<% using (Html.BeginForm("Settings", "YourControllerName")) { %>

标签:http-post,asp-net-mvc-2,c,asp-net-mvc-3
来源: https://codeday.me/bug/20191102/1994501.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有