ASP.NET MVC ViewBag/ViewData/TempData区别】的更多相关文章

ViewBag/ViewData public dynamic ViewBag { get; } public ViewDataDictionary ViewData { get; set; } ViewBag和ViewData其实是互通的,区别是:ViewBag不再是字典的键值对接口,而是dynamic动态类型(C#4.0引入的新特性),会在程序运行的时候动态解析.ViewBag的本质就是ViewData,只不过多了层dynamic控制. ViewBag和ViewData仅针对当前Action…
Asp.Net MVC EF各版本区别 https://www.cnblogs.com/liangxiaofeng/p/5840754.html 2009年發行ASP.NET MVC 1.0版 2010年發行ASP.NET MVC 2.0版,VS2010 2011年發行ASP.NET MVC 3.0版+EF4,需要.Net4.0支持,VS2011 2012年發行ASP.NET MVC 4.0版+EF5,需要.Net4.0支持,VS2012 2013年發行ASP.NET MVC 5.0版+EF6,…
ASP.NET MVC各个版本的区别 Net Framework4.5是不支持安装在window server 2003上,如非装请用net framework4.0; MVC1.0 publsh time:2008 IDEV:VS2008 .NET Framework:3.0.0 MVC2.0 publsh time:2010 IDEV:VS2010 .NET Framework:3.5.0 MVC3.0 publsh time:2011 IDEV:VS2011 .NET Framework:…
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中查询数据时不需要类型转换 有一些类型转换代码 可读性更好 参考:http://www.c…
1.ViewData 1.1 ViewData继承了IDictionary<string, object>,因此在设置ViewData属性时,传入key必须要字符串型别,value可以是任意类型. 1.2 ViewData它只会存在这次的HTTP要求而已,而不像Session可以将数据带到下HTTP要求. public class TestController : Controller { public ActionResult Index() { ViewData["; retur…
  2009年發行ASP.NET MVC 1.0版 2010年發行ASP.NET MVC 2.0版,VS2010 2011年發行ASP.NET MVC 3.0版+EF4,需要.Net4.0支持,VS2011 2012年發行ASP.NET MVC 4.0版+EF5,需要.Net4.0支持,VS2012 2013年發行ASP.NET MVC 5.0版+EF6,需要.Net4.5支持,VS2013 2015年發行ASP.NET MVC 6.0版+EF7,需要.Net5.0支持,VS2015 ASP.N…
本文转自:http://www.cnblogs.com/liangxiaofeng/p/5840754.html 2009年發行ASP.NET MVC 1.0版 2010年發行ASP.NET MVC 2.0版,VS2010 2011年發行ASP.NET MVC 3.0版+EF4,需要.Net4.0支持,VS2011 2012年發行ASP.NET MVC 4.0版+EF5,需要.Net4.0支持,VS2012 2013年發行ASP.NET MVC 5.0版+EF6,需要.Net4.5支持,VS20…
asp.net MVC请求过程 ASP.NET MVC框架只是给开发者提供了开发web应用程序的一种选择,并不是要取代Webform这两种技术各有优缺点,开发者需要根据实际情况,选择对应的技术有时候,可以在同一个项目中混合使用这两种技术 WebForm请求过程 个人网站:http://www.51pansou.com .net视频下载:.net视频教程 .net源码下载:.net源码…
原文:https://www.cnblogs.com/liangxiaofeng/p/5840754.html 2009年發行ASP.NET MVC 1.0版 2010年發行ASP.NET MVC 2.0版,   VS2010 2011年發行ASP.NET MVC 3.0版+EF4,需要.Net4.0支持, VS2011 2012年發行ASP.NET MVC 4.0版+EF5,需要.Net4.0支持, VS2012 2013年發行ASP.NET MVC 5.0版+EF6,需要.Net4.5支持,…
另一篇文章,也对TempData 做了很详细的介绍,链接地址:https://www.jianshu.com/p/eb7a301bc536   . MVC中的 TempData 可以在Controller之间进行传递,如果使用过了之后,不管是在View里使用,还是在controller里使用,再次获取就为Null .因此,我们可以总结TempData对象有两个特点. 1:可以在Controller之间传递数据. 2:只能使用一次,获取数据后,再次获取,得到的结果就是 Null . 直接看源码,就…
一.ViewData和ViewBag 1.ViewData和ViewBag都是从Action向View传递数据的方式,当然还有其他方式如向View传递Model. 2.ViewData页面查询数据时需要转换合适的类型(var std in ViewData["students"] as IList<Student>),ViewBag不需要,他们的使用方法如下: 1)ViewBag: controller中定义ViewBag.name="Tom"; vie…
一:类型比较 1.1)ViewBag是动态类型(dynamic). 1.2)ViewData是一个字典型的(Dictionary)-->ViewDataDictionary. 1.3)TempData是一个字典型的(Dictionary)-->TempDataDictionary. 二:生命周期和作用域 2.1)ViewBag生命周期和View相同,只能作用于一个View. 2.2)ViewData生命周期和View相同,只能作用于一个View. 2.3)TempData生命周期为被调用前一直…
在MVC3开始,视图数据可以通过ViewBag属性访问,在MVC2中则是使用ViewData.MVC3中保留了ViewData的使用.ViewBag是动态类型(dynamic),ViewData是一个字典型的(Dictionary).viewData比viewBag要快,且在viewPage中查询数据是需要转换数据类型,而viewBag不需要数据转换.TempData也可以用来向视图传递数据.只是ViewData和ViewBag的生命周期和View相同,只对当前View有用.而TempData则…
在mvc的controller中,我们知道有很多的临时变量存放数据,比如说viewData,viewBag,还有一个比较特殊的tempData,关于前两个或许大家都明白, 基本上是一个东西,就是各自的编程写法不一样,最终都会放到viewContext中,然后送到WebPage中,如果你要证明的话,可以看下下面的代码. /// <summary>Gets the dynamic view data dictionary.</summary> /// <returns>Th…
一.ViewData[] //赋值 ViewData["u"]="值"; //取值 数据类型 u= ViewData["u"] as 数据类型 //数据类型强转 二.ViewBag Users u = new Users(); //赋值 ViewBag.hehe = u;//hehe是自己随意起的名称 //取值 Users u = ViewBag.hehe as Users;//强转数据类型 三.TempData[] 像Session一样使用,效…
前言 之前在开始该系列之前我们就讲述了在MVC中从控制器到视图传递数据的四种方式,但是还是存在一点问题,本节就这个问题进行讲述同时进行一些练习来看看MVC中的扩展方法. 话题 废话不必多说,我们直接进入主题,关于TempData的基本用法就不需要再进行讲述,其生命周期确实很短,但是对于其用法也就存在一定可能性,当我们需要从一个页面到另外一个页面进行数据传递时,此时就需要用到该对象.该对象数据进行第一次加载后则其生命周期结束,但是我们如何做到持久化该对象中的数据呢?请往下看. 持久化TempDat…
弱类型:ViewData[""] 动态型:ViewBag dynamic ViewData 是字典型的(Dictionary),ViewBag 不再是字典的键值对结构,而是dynamic(动态型),会在程序运行的时候动态解析. ViewData为object型,而ViewBag为dynamic型. dynamic型与object型的区别是在使用时它会自动根据数据类型进行转换,而object型则需要我们自己来强制转换. 控制器: public ActionResult Top() { s…
使用以下方法进行输出 @Html.Raw(ViewData["jsonString"].ToString())…
1.视图获取json类型数据 var str = '@(ViewBag.loginInfoList)'; if ($.trim(str).length>0) { re = new RegExp(""", "g"); //定义正则表达式,g标识全部替换 将\转译为",成为正确的json格式数据 var newstr = str.replace(re, '"'); re = new RegExp("{", &quo…
Net Framework4.5是不支持安装在window server 2003上,如非装请用net framework4.0; MVC1.0 publsh time:2008 IDEV:VS2008 .NET Framework:3.0.0 MVC2.0 publsh time:2010 IDEV:VS2010 .NET Framework:3.5.0 MVC3.0 publsh time:2011 IDEV:VS2011 .NET Framework:4.0.0 MVC4.0 publsh…
EF(EntityFrameWork) ORM(对象关系映射框架/数据持久化框架),根据实体对象操作数据表中数据的一种面向对象的操作框架,底层也是调用ADO.NET ASP.NET MVC 项目会自动导入MVC程序集,因为默认.NET环境(GAC)中没有这个程序集 1: EF数据上下文 继承于 DbContext ; DBQuery<T> ,支持延迟加载:只有当使用到数据的时候,才去查询数据库; 主要成员:表映射的实体集合 Set<T>,Entry<T>() conte…
简介 这篇文章是我在学习ASP.NET MVC程序传值方式梳理总结的笔记.在ASP.NET MVC中,页面间和Controller与View之间主要有以下几种小量数据传值方式, ViewData.ViewBag.TempData.Session变量. 我们是幸运的,微软提供给了我们这么多传值方法,但选择越多越让人抓狂,这些技术每一种都有自己的优点和缺点,我应该何时使用哪一种传值方式呢? 正文 上面的这四种方法中,ViewData和ViewBag其实是一回事, ViewBag其实是对ViewDat…
ViewBag 不再是字典的键值对结构,而是 dynamic 动态类型,它会在程序运行的时候动态解析. eg: ViewBag.NumberObjs = new string[] { "one", "two", "three" }; ViewData["NumberArrs"] = new string[] { "one", "two", "three" }; //正…
一. ASP.NET MVC中的TempData 在ASP.NET MVC框架的ControllerBase中存在一个叫做TempData的Property,它的类型为TempDataDictionary,顾名思义是一个字典类.TempData在ASP.NET MVC中的作用是:可用于在Action执行过程之间传值.简单的说,你可以在执行某个Action的时候,将数据存放在TempData中,那么在下一次Action执行过程中可以使用TempData中的数据. 如: public ActionR…
Asp.Net Mvc: 浅析TempData机制 环境: Windows 2008, VS 2008 SP1, Asp.Net Mvc 1.0 ------------------------------------------------------------------------------ 一. Asp.Net Mvc中的TempData 在Asp.Net Mvc框架的ControllerBase中存在一个叫做TempData的Property,它的类型为TempDataDictio…
本文转自:ASP.NET MVC中的两个Action之间值的传递--TempData 一. ASP.NET MVC中的TempData 在ASP.NET MVC框架的ControllerBase中存在一个叫做TempData的Property,它的类型为TempDataDictionary,顾名思义是一个字典类.TempData在ASP.NET MVC中的作用是:可用于在Action执行过程之间传值.简单的说,你可以在执行某个Action的时候,将数据存放在TempData中,那么在下一次Act…
一. Asp.Net Mvc中的TempData 在Asp.Net Mvc框架的ControllerBase中存在一个叫做TempData的Property,它的类型为TempDataDictionary,顾名思义是一个字典类.TempData在Asp.Net Mvc中的作用是:可用于在Action执行过程之间传值.简单的说,你可以在执行某个Action的时候,将数据存放在TempData中,那么在下一次Action执行过程中可以使用TempData中的数据. 如: 上面的代码中,Index()…
1.ASP.NET MVC 3 如何去除默认验证 这个默认验证是在web.config配置文件中设置的    <add key="ClientValidationEnabled" value="true"/>设置为false就行了,    这个是去掉所有model的默认验证,然后你可以在model中加上自己的验证,这样哪些属性需要验证,哪些不需要 就看你自己了 示例代码: publicclass Movie { publicint ID { get; s…
http://blog.csdn.net/churujianghu/article/details/7297358 1.ASP.NET MVC 3 如何去除默认验证 这个默认验证是在web.config配置文件中设置的    <add key="ClientValidationEnabled" value="true"/>设置为false就行了,    这个是去掉所有model的默认验证,然后你可以在model中加上自己的验证,这样哪些属性需要验证,哪些…