版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
ASP.NETMVC网站设计教程第1章ASP.NETMVC简介1.1ASP.NETMVC简介ASP.NETMVC是微软官方提供的一种开源MVC框架,在经过了漫长的Preview和2个RC版本后,2009年3月发布了ASP.NETMVC1.0版本;2010年3月发布了ASP.NETMVC2版本,该版本加入自定义的UI和强类型等HTML辅助程序,同时对VisualStudio开发工具进行了改善;2011年1月发布了ASP.NETMVC3版本,提供了支持Razor视图的新引擎,改进了模型验证,支持JavaScript以及非侵入式的Javascript、JQuery和JSON绑定;2012年9月发布了ASP.NETMVC4版本,新增了手机模版、单页应用程序、WebAPI等模版,更新了Javascript库,同时也增强了对HTML5、AsyncController等的支持;2015年7月与VisualStudio2015一同发布了ASP.NETMVC5,也是当前的最新版本,增加了部分新的Web项目体验,重写了成员和身份验证系统,并可以通过Nuget添加MVC。1.1.1ASP.NETMVC开发简史MVC(ModelViewController)模式将应用程序分为模型、视图和控制器三个主要组成部分。MVC模式有助于实现关注点分离,网站运行时由路由器解析用户访问的请求并将其转到控制器,控制器使用模型执行用户操作或检索查询结果,选择所需的模型数据向用户显示视图。1.1.2MVC模式初探1.模型(Model)模型是实现应用程序数据逻辑的程序部件,模型对象会检索模型状态并将其存储在数据库中。模型负责所有与数据相关的内容,如数据结构的封装、数据库连接、读取数据库、执行存储过程、数据格式显示、数据有效性约束等。2.视图(View)视图是显示应用程序用户界面(UI)的组件,可以将模型创建的数据在UI中显示,并作为与用户交互的接口。视图负责所有Web页面显示的内容,如按指定格式将数据显示给用户、接受用户输入、决定数据的传递格式和传送方式、实现数据的验证等。3.控制器(Controller)控制器是处理用户交互、选择模型并使用特定视图来显示UI的组件。控制器决定了系统运行的流程,如从Model中读取数据、决定View显示等。MVC模式的主要优点(1)项目分成Model、View和Controller三部分,使得复杂项目更加容易维护,减少了项目之间的耦合;(2)项目中不使用ViewState和服务器控件,可以更方便地控制应用程序的行为;(3)应用程序通过Controller来控制程序请求,可以由UrlRouting功能来重写URL;(4)项目分为独立模块可以更好地支持单元测试;(5)项目分为独立模块可以更好的支持团队开发模式。1.1.3ASP.NETWebForm和ASP.NETMVC对比1.ASP.NETWebForm的优点(1)具有大量的服务器控件支持。如GridView、Repeater等控件,可以方便地进行数据绑定,从而减少的代码的编写。(2)基于事件驱动编程。如快速为控件添加Click、PostBack等事件。(3)显示和处理逻辑分离。如aspx页面和cs代码文件分离,代码比较清晰。(4)支持视图状态。每个控件以“隐藏域”的形式存在当前页面表单中,所见即所得。2.ASP.NETWebForm的缺点(1)深入学习的难度较大。由于微软封装的比较深,深入学习不容易。(2)页面性能不高。使用ViewState增加了页面的负担。(3)文件紧密耦合度太高。采用Code-Behind代码后植技术,文件紧密耦合度高。(4)不利于单元测试。包含了大量的事件处理函数,单元测试较麻烦。3.ASP.NETMVC的优点(1)MVC架构降低了程序间的耦合性,可以方便地进行单元测试;(2)不使用ViewState技术,页面更加干净,提升了程序的性能;(3)支持并行开发,可扩展性好,继承了ASP.NET的特性,如表单验证、会话等;(4)通过修改路由规则,可以生成自定义的友好URL;(5)可使用强类型View,页面更安全,更高效。4.ASP.NETMVC的缺点(1)需要有HTML、CSS、JavaScript、JQuery等前端技术,学习的成本增加;(2)不支持视图状态,页面设计时无法实现所见即所得。1.2MVC模式下的Web项目开发【例1-1】在D盘ASP.NETMVC应用程序目录中创建chapter1子目录,将其作为网站根目录,创建一个名为example1-1的项目,设计Web页面,运行网站显示“这是第一个ASP.NETMVC网页”。1.2.2ASP.NETMVC应用程序结构表1.1ASP.NETMVC应用程序的基本目录目录说明App_Data文件夹存储应用程序数据App_Start文件夹存储启动文件的配置信息,包括RouteConfig路由注册信息Content文件夹存储用于静态文件,比如样式表(CSS文件)、图表和图像Themes文件夹存储jQuery样式和图片Controllers文件夹存储控制器Models文件夹存储应用程序的数据模型Scripts文件夹存储JavaScript文件Views文件夹存储控制器的视图文件Global.asax文件应用程序第一次启动的初始化操作信息Web.config文件ASP.NETMVC正常运行所需的配置信息favicon.ico文件应用程序的图标信息1.2.3ASP.NETMVC中的特殊文件夹表1.2特殊文件夹说明文件夹说明App_Browsers存储浏览器定义(.browse)文件,通过文件识别并判断浏览器App_Code存储公用程序的源代码(.cs、.vb和.js等)文件,将会编译为应用程序的一部分App_Data存储应用程序的数据文件(.md和.xm等)App_GlobalResources存储资源(.resx和.resources)文件,将会编译成具有全局范围的组件App_LocalResources存储资源(.resx和.resources)文件,将会与特定的页面、用户控件或应用程序的主页面(.MasterPage)进行关联主题存储主题文件(.skin和.css等),用于定义网页和控件的外观1.2.4ASP.NETMVC中的文件类型表1.3VisualStudio的文件类型文件名后缀名说明解决方案文件.sln解决方案中的项目信息和通过属性窗口访问全局构建设置信息用户选项文件.suo特定用户、存储Web项目的转换表、项目的离线状态、以及其他项目构建的设置信息C#项目文件.csproj参考内容、名称、版本等项目细节C#项目的用户文件.csproj.user用户的相关信息表1.4普通Web文件类型说明文件名后缀名说明C#文件.csC#源代码文件XML文件.xmlXML文件与数据标准文件数据库文件.mdfSQLServer数据库文件类图文件.cd类图表文件脚本文件.jsJavaScript代码文件配置文件.config存储程序设置的程序配置文件图标文件.ico图标样式的图像文件文本文件.txt普通文本文件表1.5Web文件类型说明文件名后缀名说明MVC视图文件.cshtml基于C#的Razor的视图文件Web窗体文件.aspx代码分离的Web窗体全局程序文件.asax以代码形式处理程序全局事件的应用文件,一个项目最多只可以包括一个global.asax文件静态页面文件.htm/.HTML标准的HTML页样式文件.css设置外观的层叠样式表站点地图文件.sitemap表示页面间层次关系的站点地图皮肤文件.skin用于指定服务器控件的主题用户控件文件.ascx用户自主创建的Web控件浏览器文件.browser定义浏览器相关信息的文件1.4小结本章主要介
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025江西省遂川县职业教育中心工作人员招聘考试试题
- 2025江苏省灌南中等专业学校工作人员招聘考试试题
- 2026年物联网智能农业监测创新报告
- 吊篮工程专项施工方案
- 基于区块链技术的2025年跨境数字版权交易平台开发项目可行性分析
- 2025年生物标记物在生物医药创新药物研发中的可行性分析报告
- 初中英语演讲中面部表情的沟通效能课题报告教学研究课题报告
- 策略定期报告:守着“大光”看“光圈”
- 2026年4月宏观经济月报:内部政策等待外部局势明朗
- 高中社团活动在学生数学素养提升中的应用与效果评价教学研究课题报告
- 硅酸钙板轻钢龙骨隔墙施工方案
- 奥氏体不锈钢焊管固溶热处理工艺规范(征求意见稿)
- HGT 6188-2023 聚丙烯共聚反应器 (正式版)
- 锂电池充放电循环测试课件
- DL∕T 2009-2019 超高压可控并联电抗器继电保护配置及整定技术规范
- 2024年贵州匀影文旅投资集团有限公司招聘笔试参考题库含答案解析
- 基于STM32智能台灯的设计与实现
- 九年级道德与法治的知识竞赛题
- 基于PLC控制的机械手设计
- DB4206-T 60-2023 实验室气瓶安全管理规范
- 输配电线路单线图绘制要求
评论
0/150
提交评论