




已阅读5页,还剩67页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
北京传智播客教育。从初学者到熟练者,准备工作,开发环境:VS 2010 SQL Server 2008 Express MVC2.0 VS 2008安装MVC 2.0请参考:课程安排,MVC基础知识介绍MVC和三层应用示例MVC展望.ASP。NET网站开发方法。微软在2009年发布的第一个开源表示层框架。这是微软的第一个开源项目MVC。它的目的不是取代网络开发,而是网络开发的另一种选择。网络表单模型支持事件模型开发。多亏了丰富的服务器端组件,webfrom开发可以快速构建web应用程序2,易于使用,易于上手3,丰富的控件WebFrom的缺点1,太强的封装性,很多底层的东西让我们初学者不是很清楚2,易于上手,难以升级3,难以学习复杂的生命周期模型4,不灵活的控件5,ViewState处理,WebFormsVsMVC,MVC有以下优点:1。很容易将一个复杂的应用程序划分为三个组件模型:模型、视图和控制器。模型、视图和控制器有效地简化了复杂的体系结构,并体现了良好的隔离原则2,因为不使用基于服务器的表单。因此,我们的程序员在控制方面更加灵活,拥有干净的页面。3.他们可以控制定制网址的生成。对于搜索引擎优化友好的网址是不可能的4,强类型视图实现,更安全,更可靠和更有效。5.让网页开发集中在某一层。更有利于分工合作,适合大规模框架开发。许多企业已经使用MVC作为项目开发的框架。招聘显然需要熟悉MVC开发模式。我正在做的项目框架是MVC电子文件格式.Asp介绍。NetMVC,这是一种性能模式。它将web应用程序分为三个主要组件,即:模型、视图、控件。模型主要是存储或处理数据的组件。事实上,模型是一个组件,它在实体类上实现业务逻辑层的相应数据库操作,例如CRUD。它包括应用程序信息,如数据、验证规则、数据访问和业务逻辑。视图是一个用户界面层组件。它主要是将模型中的数据展示给用户C:C:控制器处理用户交互,从模型中获取数据,并将数据传输到指定的视图,MVC请求模型,借用WebFrom来理解MVC,作为新建的WebFrom项目Label的一个例子,在页面类中添加了一个List。在前台,for循环遍历用于显示列表分层的想法。WebFromCodebehindMVC代码与页面完全分离。Asp。NetMVC是第一个程序。新的MVC项目理解控制器在网络项目理解视图中在网络项目理解模型中,协议大于配置,控制器被放置在控制器文件夹中,命名方法以XxController结束。每个控制器对应于视图中的一个文件夹。文件夹的名称与控制器的名称相同。控制器中的方法名对应于一个视图(不是必需的,但推荐使用)。视图的名称与操作的名称相同。发展过程(转型)。新的控制器创建一个动作。视图是根据操作创建的。数据在操作中获得,操作结果被生成并传递给视图。视图是显示数据的模板url请求控制器。动作处理查看响应,练习-熟悉m、v、c,建立一个新的Mvc项目(项目名:MVCDemo)熟悉项目中文件的作用,建立一个新的控制器名为CustomController,并添加索引方法视图来创建一个新的自定义文件夹,并创建索引视图来传递数据以查看和显示Asp之间的关系。创建索引方法中的NetMVC组件。视图和控制器都可以直接请求模型,但是模型不依赖于视图和控制器控制器可以直接请求视图来显示特定的页面。视图不依赖于控制器。事实上:视图可以用另一种方式请求控制器来深入解释模型。包括应用程序信息,如数据、验证规则、数据访问和业务逻辑。它是我们的网络应用程序的主要框架。模型由我们的业务逻辑层调用。它再次强调模型是一个独立的组件。它不知道视图的存在,更不用说控制器的存在了。理解这两种分离是非常重要的!深入解释模型,包括数据、数据的操作和与模型相关的设计方法,企业级项目的架构方法示例(演示),以及视图的深入解释。注意:视图负责输出和显示数据,而不是样式视图中弱类型的视图数据和强类型的视图数据。ModelHTML。Encode=Html。助手类。助手扩展客户端验证MVC中的智能提示来自哪里!弱类型视图数据,例如,控制器中的代码在前台视图中如下:视图中强类型视图数据模型,控制器中的代码如下:视图前台的代码如下:Html。编码,相当于推荐大家使用,方便简洁,Html。帮助器类,支持强类型(1):例如,在模型中创建Techer类演示,在弱类型中显示实体类以查看演示,在强类型中显示实体类以查看强类型的本质:在aspx页面顶部添加指令:“%红色部分是视图页面属性:模型的特定类型,如果没有指定特定类型,则它是动态的,html。Helper类,强类型(2): html.xx( ),html.helper类 dropdownlist,varitems=new list()(newselectlist item() text= 001 ,value= 1 ,selected=false)。(NewSelectListItem()文本=002 ,值=2 ,选定=false );视图数据的项目值:视图数据“项目”=项目;这在aspx中使用:项将在生成的代码中用作标签的名称和id值。Html。助手类-复选框%优点:让控制器做它应该做的事情:组织逻辑和与业务逻辑的通信。实际的视图/用户控制被抽象,以便于将来的重新配置。将业务逻辑抽象到控制器中还可以让您的业务逻辑专注于它应该做的事情。使用lambda表达式,强类型,Html。助手类-窗体,模式1: 模式2: BeginEnd,HtmlHelper扩展方法,扩展方法:1。方法所在的类必须是static 2。该方法也必须是静态的。方法的第一个参数必须是要扩展的类型,例如,如果要将方法扩展到int,第一个参数必须是int。4.第一个参数前需要一个this关键字。在MVC中扩展HtmlHelper之后,在页面上使用扩展方法引用扩展方法的命名空间。例如:MVC客户端验证,使用客户端验证。必须引入JS脚本来支持微软AJAX。JSMicrosoftmVCValidation。JS添加语句。系统。组件模型。中的数据批注命名空间。NET框架包含许多您可以使用的内置身份验证功能。其中四个是最常用的:必选)、斯特林格勒、山脉和正则表达式。定义您自己的自定义验证功能并应用它们。您可以通过继承ponent model . data annotations命名空间中的ValidationAttribute基类来定义完全自定义的功能。一种自动生成实体类的验证并将附加的基于特征的元数据(如验证特征)应用于由VS设计者自动生成/维护的类的方法是使用一种我们称之为“buddyclasses”的技术基本上,您创建了另一个包含验证属性和元数据的类,然后通过将“MetadataType”属性应用于用工具生成的类编译的部分类,将它与设计器生成的类连接起来。例如,如果我们想将之前使用的验证规则应用到由LINQtoSQL或ADO维护的Person类中。NETEF设计器,我们可以更新我们的验证代码,使其存在于一个单独的“Person_Validation”类中,例如应用程序、练习、练习Htmlhelper的控件使用动作链接超链接开始信息表单提交复选框多选框下拉列表框隐藏域列表框密码框单选按钮文本区域文本字段文本框。在我们引用系统的项目中,对路由的深入解释。微软独立的项目路由和没有开源功能的代码路由:确定控制器-确定动作-确定其他参数-根据确定的数据,将请求传递给控制器和动作。路由的深入解释。MVC项目是由URL请求驱动的。为什么访问localhost/home/index会传递给HomeController中名为index的操作(即HomeController类中的index方法)?这是怎么发生的?路由的深入解释,路由。在global.asax.cs文件中定义了映射路由(“ Default ,/,/路由名称“controller/action/id”,/参数为controller= home ,action= index ,id=url参数.可选/参数默认值)的新url。我们的Url 3336 localhost/home/indexlocalhost是一个域名,因此我们必须首先删除域名部分:home/index,它对应于上述代码中的这个URL结构: controller / action / id ,因为我们已经为这个URl结构建立了标识规则。因此,可以识别控制器是主控制器,操作是索引,id不是默认值“”。对于一个网站来说,为了对SEO友好,一个网站的Url级别不应该超过三层: localhost/ channel / specific网页,其中域名是第一层,渠道是第二层。那么在最终的网页中只剩下最后一层了。如果在默认实例中使用“ controller / action / other parameters ”的形式,将会影响网站的SEO。路线实例说明,#地区酒店频道部分/酒店/列表-北京-100,200-3路线。maproute (hotel list page , hotels/ action - city - price - star ,newcontroller=Hotel ,action=list ,city=beijing ,price=-1,-1 ,star=-1,newcity=a-zA-Z*,price=(d) ,(d),star=-1-5 );/酒店/所有匹配的路线。MapRoute (hotels home page , hotels/* values ,new controller= hotel ,action= default ,hotel id= );#endregion/网站主页。路线。地图路线(“网站主页”,“*值”,新控制器=“主页”,操作=“索引”);,Url示例摘要,实现的功能:(1)访问本地主机/酒店/列表-北京-100,200-3将访问酒店频道列表页面,并传入查询参数(2)访问本地主机/酒店下方的任何其他页面地址将跳转到酒店主页。(3)访问本地主机下的任何地址。如果以上两个规则不匹配,跳到第一页。简单总结:(1)路由规则有顺序(按添加“是”的顺序)。如果一个网址匹配多个路由规则,它将根据第一个匹配的路由规则执行。(2)根据上述规则,特定频道的特定页面将位于顶部。将频道的第一页和网站的第一页放在底部。(3)*values表示后面可以使用任何格式。Asp。NetMVCAreas介绍说,随着业务的需要,将会有越来越多的结构性需求,越来越多的文件夹在视图目录下,或者你需要一个更精细的页面路径结构,此外,这可能是一个多人合作开发。有许多网络项目需要在一个网站上合并和访问。为了测试路由,使用RouteDebug辅助类将以下代码添加到Global . asax:protected vourizapplication _ start() register routes(route table . routes);RouteDebug。RoutedeBugger . RewriterOutesForTesting(Routetatable .路线);,Mvc请求过程中,一个请求首先被视图捕获过来,然后传递给路由,路由根据用户的请求解析调用特定控制器的动作。然后,控制器向视图引擎返回一个视图结果,并将其写入响应。练习,在前一个练习的基础上添加几个路由规则要求:定义规则可以匹配
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 村民集体财产合同范本
- 出国劳务个人合同范本
- 智力题目及答案初中生
- 工作作风心得体会【五篇】
- 职业技能刷题题目及答案
- 执法综合面试题目及答案
- 2025-2025学年上海市高行中学高三语文期末考试试卷及答案
- 环保行业绿色生态建设方案
- 委托购买合同书范本
- 人工智能在教育领域的未来发展趋势
- 2025年呼伦贝尔农垦集团有限公司工作人员招聘考试试题
- 公司志编纂工作方案
- 新人教版物理八年级下册知识点总结-物理八年级下册考点人教版
- 抗战胜利70周年主题班会教案
- 2025年九年级语文上册课后习题参考答案
- 2025年保安证考试沟通能力试题及答案
- 全套课件-工程建设监理概论
- 餐饮服务与数字化运营 习题及答案 项目三
- 人教板七年级至九年级英语单词表
- 安全主任竞聘演讲稿
- 污水处理中的自动化控制技术
评论
0/150
提交评论