一、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. springmvc4+hibernate4+spring4注解一对多级联保存

    package com.h3c.zgc.user.entity; import java.util.HashSet; import java.util.Set; import javax.persis ...

  2. thinkphp自定义权限管理之名称判断

    权限管理,就是给不同的用户分配不同的权限.当用户登录或者操作时候进行判断,来阻止用户进行权限以外的操作.本次讲的是当用户登录一刻,只显示权限开启的内容. 一.建立数据库. 1.权限表funcla.来存 ...

  3. 大数相乘nyoj28

    描述我们都知道如何计算一个数的阶乘,可是,如果这个数很大呢,我们该如何去计算它并输出它?   输入 输入一个整数m(0<m<=5000) 输出 输出m的阶乘,并在输出结束之后输入一个换行符 ...

  4. a标签实用方法详解

    a:link { color: black } /* 未访问时的状态 */ a:visited { color: blue } /* 已访问过的状态 */ a:hover { color: red } ...

  5. jqGrid预定义的格式化类型formatter

    下表列出了jqGrid中的预定义格式化类型 所有预定义类型和编辑模式兼容,就是说数字,链接和email等需要转换,才能使他们被正确编辑 类型 选项(默认值参考语言选项) 描述 integer thou ...

  6. dom4j微信接口开发

    新建一个web项目,我用的是eclipse和tomcat7.0 ,外网环境用的nat123 先建立一个实体bean:TextMessage /** * xml基本对象 * @author xiaohu ...

  7. 移动表格行 解决低版本IE fadeIn fadeOut 失效问题

    在维护一个内部使用的web工具的时候,需要在表格里配置参数,并且支持参数列的上下移动,有jQuery-UI工具支持对表格列的拖动,但是此处不追求效果,而且旧系统页面兼容性很差,无奈只能做上下移动的按钮 ...

  8. sql cross join table

    A 表数据如下图所示 B表数据如下图所示

  9. Python开发【第七章】:Python面向对象进阶

    1.静态方法 通过@staticmethod装饰器即可把其装饰的方法变为一个静态方法,什么是静态方法呢?其实不难理解,普通的方法,可以在实例化后直接调用,并且在方法里可以通过self.调用实例变量或类 ...

  10. Python开发【第三章】:Python编码转换

    一.字符编码与转码 1.bytes和str 之前有学过关于bytes和str之间的转换,详细资料->bytes和str(第四字符串) 2.为什么要进行编码和转码 由于每个国家电脑的字符编码格式不 ...