一、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. jquery_插件

    编写插件的目的:给已有的一些列方法或函数做一个封装 jquery插件推荐命名方式 :jquery.[插件名].js  防止与插件库混淆 所有对象方法都应当附加到jquery.fn 对象上,所有的全局函 ...

  2. IOS网络第一天-01基本的HTTP请求

    *************************** #import "HMViewController.h" #import "MBProgressHUD+MJ.h& ...

  3. OSI七层与TCP/IP五层网络架构详解

      引用自:http://www.2cto.com/net/201310/252965.html   OSI和TCP/IP是很基础但又非常重要的网络基础知识,理解得透彻对运维工程师来说非常有帮助.今天 ...

  4. 新功能WBS

    项目名:连连看 组名:天天向上 组长:王森 组员:张政.张金生.林莉.胡丽娜 代码地址:HTTPS:https://git.coding.net/jx8zjs/llk.git SSH:git@git. ...

  5. Eclipse创建java web工程配置Tomacat和JDK 【转】

    在学习AJAX过程中,还用Intellij就有点老旧了,这是后装个Eclipse时,发现这个配置也很头疼,现在就叫你如何创建一个web工程,同时叫你配置Eclipse. 一.创建一个web工程 1.打 ...

  6. SignalR in a WebSite Project

    Question(http://stackoverflow.com/questions/19924678/signalr-in-a-website-project)  I have a test we ...

  7. Ruby 类案例

    #!/user/bin/ruby # -*-coding:UTF-8-*- class Customer @@no_of_customers=0 def initialize(id,name,addr ...

  8. JS阻止链接跳转代码

    刷新后focus在第一个标签 onload="$('#input_email').focus(); " $(document).ready(function(){ $(" ...

  9. [译]JavaScript规范-葵花宝典

    [译]JavaScript规范 译自:https://github.com/airbnb/javascript 类型 原始值: 相当于传值 string number boolean null und ...

  10. Flume -- 开源分布式日志收集系统

    Flume是Cloudera提供的一个高可用的.高可靠的开源分布式海量日志收集系统,日志数据可以经过Flume流向需要存储终端目的地.这里的日志是一个统称,泛指文件.操作记录等许多数据. 一.Flum ...