第+18+章+ASP.NET+MVC+基础(二)

第+18+章+ASP.NET+MVC+基础(二)

ID:46282495

大小:1.76 MB

页数:42页

时间:2019-11-22

第+18+章+ASP.NET+MVC+基础(二)_第1页
第+18+章+ASP.NET+MVC+基础(二)_第2页
第+18+章+ASP.NET+MVC+基础(二)_第3页
第+18+章+ASP.NET+MVC+基础(二)_第4页
第+18+章+ASP.NET+MVC+基础(二)_第5页
资源描述:

《第+18+章+ASP.NET+MVC+基础(二)》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第五篇ASP.NET高级编程东鹏电子信息有限公司2内容第15章图形图像编程第16章ASP.NET和AJAX第17章ASP.NETMVC基础(一)第18章ASP.NETMVC基础(二)第19章ASP.NETMVC基础(三)第18章ASP.NETMVC基础(二)主讲:Jayce_Zou第四部分了解视图、视图数据和HTMLHelper主讲:Jayce_Zou创建视图:请注意,不能像在ASP.NET应用程序中添加页面一样在项目中随意添加视图。必须将视图添加到与控制器名称相同(不带Controller前缀)的文件夹中。例如,如果想创建名称为Index的新

2、视图,并且它能够由名称为ProductController的控制器返回,则必须将视图添加到项目的以下文件夹中:ViewsProductIndex.aspx包含视图的文件夹的名称必须与返回视图的控制器的名称对应。什么是View层主讲:Jayce_ZouViewDataDictionary类它是View层的核心,它主要是接受用户的请求之后,根据请求把查询到的结果生成Html。请求的数据一般是来自Model层的数据类实体。View层的工作方式,是把数据格式化之后,作为容器,在控制器Controller和视图View之间传递数据。在没有强名称的支

3、持下,View层只是个简单的字典对象,即ViewDataDictionary类。View的常用样式主讲:Jayce_Zou主讲:Jayce_Zou上图可以看出,View的样式很像WebForm,但是它们也是有区别的:第一:View页面是继承自System.Web.Mvc,而WebForm是继承自System.Web.Form。第二:View显示数据的方式使用ViewData显示。而且View模式的后面表示要调用的MVCView的实体。第三:View没有formrunat=server的标记。如果是要在View页面硬要加这个标记,调用服务器控件,

4、编译可以通过,但是不一定能运行,因为它没有ViewState和Postback。ViewState是Control的基础,没有ViewState,Control的状态是无法纪录的,服务器跟前台是无法交互的。Postback是Control的灵魂,Control要想和服务器交互,它必须要有一个Postback机制,遗憾的是,由于页面继承自System.Web.Mvc,它都不带这两个功能。主讲:Jayce_Zou另外不推荐在页面写formrunat=server的标记的原因有两个:第一:这样做打破了MVC的架构,MVC架构设计理念就彻底被颠覆了。本

5、来MVC的设计费了千辛万苦通过分文件夹的分层架构,又做路由、又做引擎,目的就是为了把表示层和业务逻辑层彻底分开。可以想象,MVC的逻辑处理全都不能在View下处理,而是在Controller处理。第二:没有ViewState和Postback。View容易混淆的概念主讲:Jayce_ZouView负责输出数据而非样式。View层不管编排代码,只有数据,没有样式。数据就是显示的数据记录跟数据库里的结构是一样的,样式是在这之上加上一些表格标记。千万别在Controller里输出Html样式。尽量不要自己在View里写Html样式,尽量使用MVC自带

6、的Htmlhelper类去完成。View尽量包含尽量少的代码。指定View作为输出主讲:Jayce_ZouAction先去View的Home文件夹找(默认),找不到文件名会继续去Share文件夹里找,如果也找不到文件,就会报错。如果想要转向的View不在Home和Share里,一定要把文件路径和文件的后缀名写清楚。11将数据传递给视图主讲:Jayce_Zou使用视图的ViewData属性,可以将数据从控制器传递给视图。控制器ViewData属性表示成对名称和值的集合。我们利用视图数据将简单的字符串消息从控制器传递到视图。也可以使用视图数据将其他

7、类型的数据(如数据库记录的集合)从控制器传递到视图。例如,如果想在视图中显示Products数据库表的内容,则应该传递视图数据中的数据库记录集合。编辑Controller、View完成一个简单的页面传值主讲:Jayce_ZoupublicActionResultIndex(stringid){ViewData["chsword"]=id;returnView();}<%@PageTitle=""Language="C#“MasterPageFile="~/Views/Shared/Site.Master"Inherits="System.Web

8、.Mvc.ViewPage"%>

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。