MVC 强类型ViewData[] TempData[]
一、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[]的更多相关文章
- ASP.NET MVC ViewBag/ViewData/TempData区别
ViewBag/ViewData public dynamic ViewBag { get; } public ViewDataDictionary ViewData { get; set; } Vi ...
- Asp.net MVC 中的TempData对象的剖析
另一篇文章,也对TempData 做了很详细的介绍,链接地址:https://www.jianshu.com/p/eb7a301bc536 . MVC中的 TempData 可以在Controll ...
- asp.net mvc中ViewData、ViewBag和TempData的详解
一.ViewData和ViewBag 1.ViewData和ViewBag都是从Action向View传递数据的方式,当然还有其他方式如向View传递Model. 2.ViewData页面查询数据时需 ...
- MVC 强类型传值Model。和弱类型传值ViewData[""]。及用EF进行增删查改(母版页的使用)
<1> 控制器 </pre><pre name="code" class="csharp">using MvcTest.Mo ...
- ASP.NET MVC中ViewData、ViewBag和TempData
1.ViewData 1.1 ViewData继承了IDictionary<string, object>,因此在设置ViewData属性时,传入key必须要字符串型别,value可以是任 ...
- 几句话说明 .NET MVC中ViewData, ViewBag和TempData的区别
ViewData和TempData是字典类型,赋值方式用字典方式, ViewData["myName"] ViewBag是动态类型,使用时直接添加属性赋值即可 ViewBag.my ...
- MVC 5使用TempData Object跨视图传递数据
经过一系列显示数据的练习:<MVC 5使用ViewData(对象)显示数据>http://www.cnblogs.com/insus/p/3377178.html<MVC 5使用Vi ...
- MVC之ViewData.Model
在MVC中前台Razor视图呈现数据的方式不止一种.举个简单的Demo,我们要把用户信息呈现给人民. 一.ViewData.Model的使用,先简单写一下Razor @model User---- ...
- asp.net mvc 之旅 —— 第五站 从源码中分析asp.net mvc 中的TempData
在mvc的controller中,我们知道有很多的临时变量存放数据,比如说viewData,viewBag,还有一个比较特殊的tempData,关于前两个或许大家都明白, 基本上是一个东西,就是各自的 ...
随机推荐
- EF框架中加子类后出现列名 'Discriminator' 无效问题
- sublime3+quick智能提示
sublime3+quick智能提示 1. 安装PackegeControl 下载 https://sublime.wbond.net/Package%20Control.sublime-packag ...
- jquery_插件
编写插件的目的:给已有的一些列方法或函数做一个封装 jquery插件推荐命名方式 :jquery.[插件名].js 防止与插件库混淆 所有对象方法都应当附加到jquery.fn 对象上,所有的全局函 ...
- c#前3章总结
01.net和c#的区别 大概在2000年,微软推出了一种革命性的产品--.NET(战略) 目标:任何人,在任何地方,使用任何终端设备,都可以访问微软提供的服务. .net Framework:要想让 ...
- 生成一行html
//压缩 一行html Regex regReplaceBlank = new Regex(">(\\s+)<", RegexOptions.IgnoreCase); ...
- windows 7 安装 telnet
telnet 192.168.1.10 8080
- IOS第12天(2,UINavigationController导航控制器)
****HMAppDelegate.m @implementation HMAppDelegate - (BOOL)application:(UIApplication *)application d ...
- java跳出外部循环
java跳出外部循环两种方法 //用flag标识 boolean flag = true; for(int i=0;i<10&&flag;i++){ for(int j=0;j& ...
- Properties类使用
package com.emolay.util; import java.io.IOException; import java.io.InputStream; import java.util.Pr ...
- Centos7 安装 nodejs
https://nodejs.org/en/download/package-manager/ 设置node v4的源 curl --silent --location https://rpm.nod ...