c语言sscanf函数的用法是什么
305
2022-09-05
MVC中页面的传值方式总结
MVC中的页面传值,通常指Controller和view之间的数据传递,经常用到的有几种方式,总结如下:
一:ViewData
获取或设置一个字典,其中包含在控制器和视图之间传递的数据。使用ViewData是采用键值对的形式,对所定义的数据进行传递。在View中会自动识别到拥有唯一键值的ViewData,并将数据显示出来。
例子:
public ActionResult() { List
视图中接收:
id | 标题 | 分类 | 状态 | 时间 | 操作 | |
---|---|---|---|---|---|---|
@a.AId | @a.ATitle | @a.ACate | @a.AStatu | @a.AUpdatetime | @a.AContent | 删 改 |
二:ViewBag
获取视图包,允许自定义属性进行赋值,属于动态类型(dynamic),以ViewBag.属性=属性值得方式进行传值,其实这里跟ViewData的使用原理类似
public ActionResult Index(){ ViewBag.Title="Hello!";}
视图中接受:
三:其他方式
还包括一些链接的方式,例如页面跳转的方式RedirectToAction,还有RenderAction等自动接收等方式。
四:View-->Controller
1.通常会选择利用ajax来通过get或者post进行提交。如果采用最原始的JS来做,就要用到之前总结的ajax经典的五步工作法了,但是通常我们采用JQuery封装好的ajax提交方式。
即$.ajax({type,url,data,success:function(){})其中最常用的就是这几个参数属性了。
2.通过Get方式+路由配置+id值进行提交数据
JS:
五、Action---------->Action
前面两种传值方式都是在view和Controller之间进行数据传递,那么如果某一个业务需要用到后台的两个Action,并且需要再这两个 Action之间进行数据传递,这时需要用到另一个概念TempData:获取要传递到视图的临时数据.使用时,需要注意TempData的生命周期,只 在第一次请求Action时临时数据存在,之后自动变为NULL,具体的使用与ViewData相同,属于键值对的数据字典类。
public ActionResult Index() { this.TempData["str"]="wyy"; return View(); } public ActionResult Index2() { string name=this.TempData["str"]; return Content(name); }
以上是在学习和实践MVC过程中经常用到的页面传值的几种方式,大的方向看来从C向V数据传递以ViewData为基础,扩展到ViewBag,更加方便快速了。从V到C传递,则归于ajax中的get和post的提交了。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~