一、ViewData[]

//赋值
ViewData["u"]="值";
//取值
数据类型 u= ViewData["u"] as 数据类型 //数据类型强转

二、ViewBag

           Users u = new Users();
//赋值
ViewBag.hehe = u;//hehe是自己随意起的名称
//取值
Users u = ViewBag.hehe as Users;//强转数据类型

三、TempData[]

像Session一样使用,效果和Session一样,是全局变量
区别是:只要取一遍值,就会自动销毁

四、

控制器中的View()方法可以给视图层传值,比如Users类

注意:在视图层中

(1)在页面头部先声明model的类型@model Users

(2)在页面中使用时直接"Mode”.属性“来取值

在控制器中传值

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using MvcApplication6.Models; namespace MvcApplication6.Controllers
{
public class HomeController : Controller
{
//
// GET: /Home/ public ActionResult Index()
{
return View();
}
public ActionResult update(string id)
{
Users u=new UsersData().dan(id);
//if(u!=null)
//{
// ViewData["u"] = u; //} return View(u);//强类型传值 }
public ActionResult update1(Users u)
{
new UsersData().update(u);
return RedirectToAction("Index","Home"); } }
}

在视图层中使用(注意上面的(1)(2))

@{
Layout = null;
}
@using MvcApplication6.Models;
@model Users
@*注意model中的”m“是小写,提示是大写,此处必须是小写*@
<!DOCTYPE html> <html>
<head>
<meta name="viewport" content="width=device-width" />
<title>update</title>
</head>
<body>
<div>
@{using(Html.BeginForm("update1","Home",FormMethod.Post))
{
Users u=ViewData["u"] as Users;
@:姓名<input type="text" name="username" value="@Model.UserName" /><br /><br />
@:密码<input type="text" name="password" value="@Model.Password" /><br /><br />
@:昵称<input type="text" name="nickname" value="@Model.NickName" /><br /><br />
@:性别<input type="text" name="sex" value="@Model.Sex" /><br /><br />
@:生日<input type="text" name="birthday" value="@Model.Birthday" /><br /><br />
@:民族<input type="text" name="nation" value="@Model.Nation1.NationName" /><br /><br />
<input type="submit" value="确定修改" />
}
} </div>
</body>
</html>

完!!

MVC 强类型ViewData[] TempData[]的更多相关文章

  1. ASP.NET MVC ViewBag/ViewData/TempData区别

    ViewBag/ViewData public dynamic ViewBag { get; } public ViewDataDictionary ViewData { get; set; } Vi ...

  2. Asp.net MVC 中的TempData对象的剖析

    另一篇文章,也对TempData 做了很详细的介绍,链接地址:https://www.jianshu.com/p/eb7a301bc536   . MVC中的 TempData 可以在Controll ...

  3. asp.net mvc中ViewData、ViewBag和TempData的详解

    一.ViewData和ViewBag 1.ViewData和ViewBag都是从Action向View传递数据的方式,当然还有其他方式如向View传递Model. 2.ViewData页面查询数据时需 ...

  4. MVC 强类型传值Model。和弱类型传值ViewData[&quot;&quot;]。及用EF进行增删查改(母版页的使用)

    <1> 控制器 </pre><pre name="code" class="csharp">using MvcTest.Mo ...

  5. ASP.NET MVC中ViewData、ViewBag和TempData

    1.ViewData 1.1 ViewData继承了IDictionary<string, object>,因此在设置ViewData属性时,传入key必须要字符串型别,value可以是任 ...

  6. 几句话说明 .NET MVC中ViewData, ViewBag和TempData的区别

    ViewData和TempData是字典类型,赋值方式用字典方式, ViewData["myName"] ViewBag是动态类型,使用时直接添加属性赋值即可 ViewBag.my ...

  7. MVC 5使用TempData Object跨视图传递数据

    经过一系列显示数据的练习:<MVC 5使用ViewData(对象)显示数据>http://www.cnblogs.com/insus/p/3377178.html<MVC 5使用Vi ...

  8. MVC之ViewData.Model

    在MVC中前台Razor视图呈现数据的方式不止一种.举个简单的Demo,我们要把用户信息呈现给人民. 一.ViewData.Model的使用,先简单写一下Razor @model   User---- ...

  9. asp.net mvc 之旅 —— 第五站 从源码中分析asp.net mvc 中的TempData

    在mvc的controller中,我们知道有很多的临时变量存放数据,比如说viewData,viewBag,还有一个比较特殊的tempData,关于前两个或许大家都明白, 基本上是一个东西,就是各自的 ...

随机推荐

  1. Spring详细总结

    Spring的特性之一:IOC(控制反转Inverse Of Control),又称依赖注入,是一种重要的面向对象编程的法则来削减计算机程序的耦合问题 也是轻量级spring框架的核心: 依赖注入: ...

  2. Centos7 安装codeblock( 转载)

    1.安装gcc,需要c和c++两部分,默认安装下,CentOS不安装编译器的,在终端输入以下命令即可 yum install gcc yum install gcc-c++ 2.安装gtk2-deve ...

  3. 【iCore3 双核心板_FPGA】实验二十四:Niosii——SDRAM读写实验

    实验指导书及代码包下载: http://pan.baidu.com/s/1c2xAJT2 iCore3 购买链接: https://item.taobao.com/item.htm?id=524229 ...

  4. equals和=,==的区别

    一. ==和equals的区别 1. ==是运算符 2. equals是String对象的方法 一般有两种类型的比较 1. 基本数据类型的比较 2. 引用对象的比较 1. 基本数据类型的比较 ==和e ...

  5. JavaDate类

    在JDK1.0中,Date类是唯一的一个代表时间的类,但是由于Date类不便于实现国际化,所以从JDK1.1版本开始,推荐使用Calendar类进行时间和日期处理.这里简单介绍一下Date类的使用. ...

  6. inotify配合rsync实现文件同步

    一.slave端rsync设置在此部署rsync服务和rsync daemon 1.安装rsync   2.配置rsyncd.conf文件#vi /etc/rsyncd.conf配置文件uid = r ...

  7. MyArrayAdapter 比较标准的写法

    ; i < mString.size(); i++) { insert(mString.get(i), i); } } notifyDataSetChanged(); LogUtils.LOGD ...

  8. 图文详解MFC程序设置菜单快捷键

    原来觉得添加个快捷键就只要几分钟,上网搜索文章都写得很模糊, 只有这边文章不错. http://www.cplusplus.me/1263.html http://blog.sina.com.cn/s ...

  9. JMeter学习-020-JMeter 监听器之【聚合报告】错误率、吞吐量、传输速率实例计算

    上文 对聚合报告的结果字段进行了概要的讲述释义,同时对吞吐量.传输速率.分位数等进行了详细的阐述,此文针对上文中描述的吞吐量及传输速率的计算进行详细的实例计算演示. 多不闲述,直入主题! 实际操作步骤 ...

  10. C语言 ---- 基本数据类型和基本运算 iOS学习-----细碎知识点总结

    // 导入头文件(stdio.h),标准输入输出的头文件,#include <stdio.h> // 程序的入口int main(int argc, const char * argv[] ...