asp.net MVC3 View视图
2012-11-17 21:12
120 查看
asp.net MVC3 增加了一个Razor视图引擎,@表达式 就是最新的也是最快的表达方式
在这里需要注意ViewBag 和ViewData的不同,其实从本质上说这两个属性都是可以进行数据传递,但是也有一些区别和联系。
首先,ViewBag是dynamic类型的,是动态类型的也就是说是在程序运行的时候动态确定的类型,而ViewData则是ViewDataDictionary类型的,这是区别1.
其次,ViewBag是通过ViewBag.Message=’Some Content’ ; 这样的方式来进行赋值存取的,而ViewData[“Message”]=”Some Content”; 是通过Key 和Value 来进行存取的这是区别2
最后,ViewBag 和ViewData 我说本质上没有什么不同,是说ViewBag 可以和ViewData 进行数据的交换获取。这句话很拗口,我举个例子来说,ViewBag.Message=’Some Content’; ViewData[“Message”]=”Some Content 2”; 如果在前台View页面通过 ViewBag.Message 和ViewData[“Message”] 分别显示的话,其实显示的是同一个内容,都是Some Content2
这是什么原因呢?其实ViewBag 在内部实现上使用了ViewData,所以导致ViewBag 和ViewData 可以互相存取。、
还有另外一个例子表示,ViewBag.Message=”guo”; ViewData[“Content”]=”zhi”; 如果在View中 可以通过ViewData[“Message”] 来获取 为 guo ,也可以 用 ViewBag.Content 来获取ViewData中的数据 显示为zhi。
这就表示ViewData 和ViewBag 可以互相存取。不知道我说的够不够清楚呢!不信的话,你可以自己试试奥。
还有一个重要的问题就是 ,不可以直接浏览Views文件夹下的View文件,必须通过Controller来进行访问,这个不同于asp.net Web form 或者是php。至于什么原因,我相信只要是学习过MVC的朋友,都会懂得。
在这里需要注意ViewBag 和ViewData的不同,其实从本质上说这两个属性都是可以进行数据传递,但是也有一些区别和联系。
首先,ViewBag是dynamic类型的,是动态类型的也就是说是在程序运行的时候动态确定的类型,而ViewData则是ViewDataDictionary类型的,这是区别1.
其次,ViewBag是通过ViewBag.Message=’Some Content’ ; 这样的方式来进行赋值存取的,而ViewData[“Message”]=”Some Content”; 是通过Key 和Value 来进行存取的这是区别2
最后,ViewBag 和ViewData 我说本质上没有什么不同,是说ViewBag 可以和ViewData 进行数据的交换获取。这句话很拗口,我举个例子来说,ViewBag.Message=’Some Content’; ViewData[“Message”]=”Some Content 2”; 如果在前台View页面通过 ViewBag.Message 和ViewData[“Message”] 分别显示的话,其实显示的是同一个内容,都是Some Content2
这是什么原因呢?其实ViewBag 在内部实现上使用了ViewData,所以导致ViewBag 和ViewData 可以互相存取。、
还有另外一个例子表示,ViewBag.Message=”guo”; ViewData[“Content”]=”zhi”; 如果在View中 可以通过ViewData[“Message”] 来获取 为 guo ,也可以 用 ViewBag.Content 来获取ViewData中的数据 显示为zhi。
这就表示ViewData 和ViewBag 可以互相存取。不知道我说的够不够清楚呢!不信的话,你可以自己试试奥。
还有一个重要的问题就是 ,不可以直接浏览Views文件夹下的View文件,必须通过Controller来进行访问,这个不同于asp.net Web form 或者是php。至于什么原因,我相信只要是学习过MVC的朋友,都会懂得。
相关文章推荐
- Asp.net mvc 3.0入门教程之3.2————View视图
- 集合视图UICollectionView 介绍及其示例程序
- IOS学习之UITableView表视图控件初步
- 控件(二)——multiview和view控件联合使用显示视图
- 对MSsqlServer的view使用insteadoftrigger进行视图更新
- View Engine 视图引擎(三)
- iOS 滚动视图 UIScrollView 代理方法 相关属性 状态栏 滚动条 回弹 弹簧效果
- ViewGroup和View的理解和当子视图发生更新时通知viewgroup更新
- android自定义View学习(一)----创建一个视图类
- Android Material Design动画 View state changes|视图状态改变
- iOS View添加手势,防止View上点击其他视图触发点击效果
- 自定义普通文本TableView header footer 视图
- 新视图 pushViewController presentModalViewController 用法
- dismissViewControllerAnimated后 通过completion传值给上一个父视图方法
- Android中View(视图)绘制不同状态背景图片原理深入分析以及StateListDrawable使用详解
- ScroolView卷轴视图
- 构建基于通用导航器架构(CNF)的视图 第一部分:定义ViewPart
- iOS设计之 表格UITableView 的参数与视图页面之间的相互传递
- dismissViewController实现多个模态视图跳转
- Android 笔记:View Animation(视图动画)与Property Animator(属性动画)