MVC中数据传递 ViewBag的使用
ViewBag
MVC3中 ViewBag、ViewData和TempData的使用和区别
在MVC3开始,视图数据可以通过ViewBag属性访问,在MVC2中则是使用ViewData。MVC3中保留了ViewData的使用。ViewBag 是动态类型(dynamic),ViewData 是一个字典型的(Dictionary)。
ViewBag和ViewData的区别:
ViewBag 不再是字典的键值对结构,而是 dynamic 动态类型,它会在程序运行的时候动态解析。所以在视图中获取它的数据时候不需要进行类型转换
ViewData | ViewBag |
它是Key/Value字典集合 | 它是dynamic类型对像 |
从Asp.net MVC 1 就有了 | ASP.NET MVC3 才有 |
基于Asp.net 3.5 framework | 基于Asp.net 4.0与.net framework |
ViewData比ViewBag快 | ViewBag比ViewData慢 |
在ViewPage中查询数据时需要转换合适的类型 | 在ViewPage中查询数据时不需要类型转换 |
有一些类型转换代码 | 可读性更好 |
Contorller
<pre class="csharp" name="code">using NewOjbect.Models;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;namespace NewOjbect.Controllers
{public class HomeController : Controller{ public ActionResult Index(){ViewBag.UserName = "无盐海";ViewBag.Age = "25";ViewBag.Gender = 1;string[] Itmes = new string[] { "中国", "美国", "德国" };ViewBag.itemsA = Itmes;// viewbag是一个新的dynamic类型关键字的封装器 //ViewData["Items"] = items;return View(); }}
}
View
<pre class="html" name="code"><html>
<head><meta name="viewport" content="width=device-width" /><title>Test2</title>
</head>
<body><div>用户名:<input type="text" id="UserName" name="UserName" value="@ViewBag.UserName" /></br>年 龄: <input type="text" id="age" name="age" value=@ViewBag.Age /></br>性 别:<input type="text" id="Gender" name="Gender" value="@ViewBag.Gender" /></br><button>提交</button><!---这里输出国家名-->>@foreach (dynamic item in ViewBag.itemsA){<p>@item</p>}</div>
</body>
</html>
MVC中数据传递 ViewBag的使用相关推荐
- 转MVC中数据传递 ViewBag的使用
MVC中数据传递 ViewBag的使用 链接:https://www.cnblogs.com/cynchanpin/p/7065098.html ViewBag MVC3中 ViewBag.ViewD ...
- MVC中 数据底层联合JQUERY实现动态的安全的验证机制
实体的验证分部类定义如下 前台controller里进行数据有效性的验证,成功就进行数据处理,不成功就返回错误 前台页面配合JQuery强大的验证功能,实现动态验证 MVC集成表单验证输出单元,显示验 ...
- 部分视图传viewbag_NET开发-MVC中如何使用ViewBag和操作方法参数向视图传递数据?...
ASP.NET MVC控制器向视图传递数据 第1节:ViewBag的使用 基本概念 在ASP.NET MVC中,有一个特殊的ViewBag对象,ViewBag是一个dynamic动态类型,定义在Con ...
- mvc中viewdata 和viewbag的区别
ViewData ViewBag 它是Key/Val ...
- Asp.net MVC中ViewData与ViewBag的使用方法(改)
在做MVC开发时经常会用到ViewData和ViewBag进行传值操作,因为很常用所以在这里总结一下,以方便后来人. Album.cs: [csharp] view plain copy using ...
- ASP.NET MVC中ViewData、ViewBag和TempData
1.ViewData 1.1 ViewData继承了IDictionary<string, object>,因此在设置ViewData属性时,传入key必须要字符串型别,value可以是任 ...
- 【转载】MVC中 数据底层联合JQUERY实现动态的安全的验证机制
实体的验证分部类定义如下 前台controller里进行数据有效性的验证,成功就进行数据处理,不成功就返回错误 前台页面配合JQuery强大的验证功能,实现动态验证 MVC集成表单验证输出单元,显示验 ...
- Web应用系统中数据传递的方式汇总
本文转载自sina_blog(siangzhang) 目录 1 Socket方式 2 ftp/文件共享服务器方式 3 数据库共享数据方式 4 message方式 5 案例 随着近年来SOA(面向服 ...
- react中父子组件数据传递,子组件之间的数据传递
首先有三个js文件,index.js(父组件) baseForm.js(子组件) etable.js(子组件) 在index.js中定义一个arr数组,传给BaseForm组件 import Reac ...
最新文章
- android 6.0虚拟内存,Maxwell的统一虚拟内存只用在专业卡上,GTX 750 Ti或无缘
- [导入]ASP.NET AJAX 说明文档-客户端引用-全局命名空间-JavaScript 基础类型扩展-Array 类型扩展-contains 函数...
- 18春东师计算机应用基础,东师计算机应用基础18春在线作业31.docx
- 信息学奥赛一本通 2022:【例4.7】最小n值
- SpringBoot @Cacheable缓存入门程序
- Windows 游戏之父,DirectX 作者 Eric Engstrom 意外去世,享年55岁
- Git显示漂亮日志的小技巧
- Cocos2d入门--2-- 三角函数的应用
- 使用 MSDeploy 部署网站
- macOS Monterey 2K 屏开 HiDPI
- 2019Windows7 虚拟机安装系统图文教程
- matplotlib配色
- 目录穿越及文件包含漏洞
- java中如何确定表的列宽,excel列宽怎么设置_javaexcel怎么设置所有列宽
- 安徽工业大计算机学院,安徽工业大学计算机学院来计算机学院交流学生工作
- Halcon 算子 convexity
- 直角三角形面积Java_怎么用Java计算三角形的周长和面积
- 从零开始仿写一个抖音App——音视频开篇,移动安全入门
- 安卓手机微信数据导出方法 -- adb备份(无需root)
- 110、氮气IG100灭火系统的设计灭火浓度