httppost/httpget限定action行为简介(c# mvc)


简介

在一个控制器,action加上[httppost]或[httpget]属性后,使action只能供相应的web操作所调用
例:

 
        [HttpPost]
        public ActionResult roleInfo()
        {
            string info = "当前POST操作成功";
            return Content(info);
        }

    

        [HttpGet]
        [ActionName("roleInfo")]
        public ActionResult roleInfoGet()
        {
            string info = "当前Get操作成功";
            return Content(info);
        }


          [ActionName("roleInfo")]
        public ActionResult roleInfoAll()
        {
            string info = "当前All操作成功";
            return Content(info);
        }

当我们在浏览器中输入访问地址(采用get访问action时),此时c#将执行roleInfoGet方法,
当我们采用表单post提交数据时,此时会调用action roleInfo方法。

一个控制下面一个action只能存在一个httpGet httpPost方法。



MVC 调用方法的方式:
例:get获取数据
1 首先查找相应控制器下是否存在[httpget]方法,如果存在,就执行此动作,返回view
2 如果不存在,则继续查找没有加 获取方式限制的动作,如果存在,就执行此动作,否则返回 404报错。

例:post推送数据
1 首先查找相应控制器下是否存在[httppost]方法,如果存在,就执行此动作,返回view
2 如果不存在,则继续查找没有加 获取方式限制的动作,如果存在,就执行此动作,否则返回 404报错。