首页 > 代码库 > 控制器到视图的传值方式
控制器到视图的传值方式
一。从控制器到视图的传值方式
(1)Viewdata
C:Viewdata["key"]="viewdata"//控制器中赋值 V:Viewdata["key"]//视图中取值
(2)Viewbag
C:Viewbag.key="viewbag"//控制器中赋值 V:viewbag.key//视图中取值
(3)TempData
C:Tempdata["key"]="tempdata"//控制器中赋值 V:Tempdata["key"]//视图中取值
(4)Model
ViewData.Model=查询出的对象 V:通过强类型页面 形式为:@model 从控制器中传来的具体类型(单个对象或者集合)
viewdata与viewbag区别:
(1)对于普通类型 传值方式一样
(2)对于强类型(对象)viewdata需要强制转换
第一种方式: 某对象 s=(命名空间+某对象)(viewdata["对象变量"])
第二种方式: 某对象 s= viewdata["对象变量"] as 命名空间+某对象)
Viewdata与Tempdata的区别:
(1)viewdata 传值时不能跨方法,否则值会丢失,只能是在本方法到本视图
(2)tempdata 可以跨方法取值不会丢失
强类型传值:通过对象传值(Model):
C中:返回一个对象(变量),return View(对象变量p);//p可能是单个对象也有可能是一个集合PL
V中:需要一个接受从C中传来的,与之对应的对象变量(一般为model)【可能是单个对象也有可能是集合】
例如:对于单个对象p:@model mvc传值.Models.Student 此时model是 Student类型的一个对象 使用model就可以访问Student类
是对于传过来的是一集合PL: @model List<mvc传值.Models.Student>
控制器到视图的传值方式
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。