前奏

1. 在新建项目中的Models文件下,新建Products类:
public class Products
{
public int Id { get; set; }
public string Name { get; set; }
public double Price { get; set; }
}
2. 在控制器中实例化此类
var p = new Products()
{
Id = 1,
Name = "饮料",
Price = 2.5
};
方式1:ViewData
将控制器中的方法用ViewData以键值对的形式类存储上述的实例化对象,如下:
ViewData["person"] = p;
然后在视图中获取ViewData中的值,并转换对象,如下:
@{
var p = (Products)ViewData["person"];
}
<h1>@p.Id</h1>
<h2>@p.Name</h2>
<h3>@p.Price</h3>
方式2:ViewBag
将控制器中的方法利用ViewBag动态表达式的形式存储上述对象,如下:
ViewBag._Product = p;
修改视图,如下:
@{
var p = (Products)ViewBag._Product;
}
方式3:Model
将控制器中的方法返回View上述对象,如下:
public ActionResult Index()
{
var p = new Products()
{
Id = 1,
Name = "饮料",
Price = 2.5
};
return View(p);
}
而我们在视图中得到强制类型对象Products,如下:
@using MvcTest.Models;
@model Products
@{
ViewBag.Title = "Index";
}
<h1>@Model.Id</h1>
<h2>@Model.Name</h2>
<h3>@Model.Price</h3>
方式四:TempData
TempData可以通过转向继续使用,因为它的值保存在Session中。但TempData只能经过一次传递,之后会被系统自动清除。
下面我将演示从Index动作转向Order动作,并在视图中输出TempData中存储的值。
首先在控制中新建Action方法,命名为Order方法,代码如下:
public ActionResult Index()
{
var p = new Products()
{
Id = 1,
Name = "饮料",
Price = 2.5
};
TempData["_product"] = p;
return RedirectToAction("Order");
}
public ActionResult Order()
{
return View();
}
修改视图如下:
@{
Products p = (Products)TempData["_product"];
}
假设控制器中的代码修改如下:
public ActionResult Index()
{
var p = new Products()
{
Id = 1,
Name = "饮料",
Price = 2.5
};
TempData["_product"] = p;
return RedirectToAction("Order");
}
public ActionResult Order()
{
return RedirectToAction("Detail");
}
public ActionResult Detail()
{
Products _product = (Products)TempData["_product"];
return View("");
}
转向:Index — Order — Detail,那么在Detail方法中,是不能获取到TempData对象的,因为TempData只能经过一次传递,之后会被系统自动清除。
输出结果
源码下载:http://xiazai./201701/yuanma/MvcTest_jb51.rar
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# mvc控制器跳转视图
# mvc
# 视图与控制器传值
# 控制器传值到视图
# ASP.NET Core MVC中的视图(Views)
# ASP.NET Core MVC学习之视图组件(View Component)
# ASP.NET Core MVC基础学习之局部视图(Partial Views)
# ASP.NET MVC中分部视图的应用方法
# 详解使用asp.net mvc部分视图渲染html
# ASP.NET MVC从视图传参到控制器的几种形式
# asp.net core mvc权限控制:在视图中控制操作权限
# asp.net MVC 根据菜单树类别不同动态加载视图的实现步骤
# 器中
# 后会
# 并在
# 可以通过
# 此类
# 我将
# 命名为
# 大家多多
# 键值
# 源码下载
# 新建项目
# Price
# js
# person
# lt
# ViewData
# var
# strong
# class
# brush
相关文章:
智能起名网站制作软件有哪些,制作logo的软件?
MySQL查询结果复制到新表的方法(更新、插入)
家庭建站与云服务器建站,如何选择更优?
天津个人网站制作公司,天津网约车驾驶员从业资格证官网?
建站之星Pro快速搭建教程:模板选择与功能配置指南
建站之星后台密码遗忘或太弱?如何重置与强化?
简历在线制作网站免费版,如何创建个人简历?
建站主机与服务器功能差异如何区分?
在线ppt制作网站有哪些,请推荐几个好的课件下载的网站?
西安大型网站制作公司,西安招聘网站最好的是哪个?
如何规划企业建站流程的关键步骤?
如何通过服务器快速搭建网站?完整步骤解析
Avalonia如何实现跨窗口通信 Avalonia窗口间数据传递
建站之星CMS建站配置指南:模板选择与SEO优化技巧
专业网站建设制作报价,网页设计制作要考什么证?
香港服务器网站测试全流程:性能评估、SEO加载与移动适配优化
太平洋网站制作公司,网络用语太平洋是什么意思?
Swift开发中switch语句值绑定模式
建站168自助建站系统:快速模板定制与SEO优化指南
代刷网站制作软件,别人代刷火车票靠谱吗?
商务网站制作工程师,从哪几个方面把握电子商务网站主页和页面的特色设计?
北京网站制作费用多少,建立一个公司网站的费用.有哪些部分,分别要多少钱?
定制建站流程解析:需求评估与SEO优化功能开发指南
,制作一个手机app网站要多少钱?
如何快速搭建响应式可视化网站?
常州自助建站费用包含哪些项目?
山东网站制作公司有哪些,山东大源集团官网?
如何在腾讯云免费申请建站?
ppt在线制作免费网站推荐,有什么下载免费的ppt模板网站?
Swift中switch语句区间和元组模式匹配
义乌企业网站制作公司,请问义乌比较好的批发小商品的网站是什么?
怎么制作一个起泡网,水泡粪全漏粪育肥舍冬季氨气超过25ppm,可以有哪些措施降低舍内氨气水平?
移民网站制作流程,怎么看加拿大移民官网?
mc皮肤壁纸制作器,苹果平板怎么设置自己想要的壁纸我的世界?
如何快速生成可下载的建站源码工具?
建站org新手必看:2024最新搭建流程与模板选择技巧
音响网站制作视频教程,隆霸音响官方网站?
如何通过多用户协作模板快速搭建高效企业网站?
如何在企业微信快速生成手机电脑官网?
济南企业网站制作公司,济南社保单位网上缴费步骤?
已有域名和空间如何快速搭建网站?
建站主机服务器选型指南与性能优化方案解析
网站制作软件免费下载安装,有哪些免费下载的软件网站?
如何在阿里云完成域名注册与建站?
网站制作知乎推荐,想做自己的网站用什么工具比较好?
网站制作壁纸教程视频,电脑壁纸网站?
如何快速上传建站程序避免常见错误?
专业的网站制作设计是什么,如何制作一个企业网站,建设网站的基本步骤有哪些?
如何在IIS服务器上快速部署高效网站?
如何快速搭建高效WAP手机网站?
*请认真填写需求信息,我们会在24小时内与您取得联系。