a sp_MVC_完全解析篇.docVIP

  1. 1、本文档共120页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
a sp_MVC_完全解析篇.doc

個人 Asp.Net 全面解析 來自/的文章 [键入作者姓名] 2010-6-17 本系列文章主要从控制器、视图和数据模型这3个Asp.Net MVC基础组建来讲解。 Asp.Net MVC 概述 原文链接: HYPERLINK /learn/mvc/ /learn/mvc/ 1. ASP.NET MVC 概览 模型-视图-控制器(Model-View-Contoller, MVC)架构模式将应用程序分为了三个主要的组件:模型,视图和控制器。ASP.NET MVC框架为ASP.NET Web表单模式提供了另一种开发模式――基于MVC的Web应用程序。ASP.NET MVC框架是一个轻量的、高度可测试的表现层框架(与基于表单的Web应用程序相同),它继承在了现有的ASP.NET功能之中,例如模板页和基于Membership的验证。MVC框架定义在了System.Web.Mvc命名空间中,并且是必不可少的,由部分System.Web命名空间支持。 MVC是一个许多开发者都熟悉的、标准的设计模式。一些类型的Web应用程序将从MVC框架中受益。其他一些应用程序将会继续使用基于Web表单和Postback的传统ASP.NET应用程序模式。还有一些Web应用程序将会将这两种方法结合;这两种方式互不排斥。 MVC框架包含下面的组件: 图1:调用一个需要参数值的控制器动作 模型:模型对象是应用程序中实现了数据领域(data domain)逻辑的部分。通常,模型对象从数据库中获取模型状态,并且将模型状态保存至数据库。举个例子,一个Product对象可能从数据库中获取信息,对它进行操作,然后将更新后的信息写回SQL Server中的Products表。 在小型的应用程序中,模型通常是一个概念上的划分而非一个实际的划分。举个例子,如果应用程序只是读取DataSet然后发送给视图,应用程序没有一个实际的模型层和相关的类。在这种情况下,DataSet就承担了模型对象的角色。 视图:视图是应用程序中显示用户界面(UI)的组件。典型地,这个UI基于模型数据创建。举个例子,Products表的编辑视图基于Products对象的状态显示了文本框、下拉列表,以及复选框。 控制器:控制器是处理用户交互的组件,它与模型协作,并且最终选择一个要呈现的视图来显示用户界面。在MVC应用程序中,视图仅仅显示信息;控制器处理并且响应用户输入和交互。举个例子,控制器处理查询字符串值,并且将这些值传递给模型,模型再使用这些参数查询数据库。 MVC模型帮助创建这样的应用程序,它能够将应用程序的各个方面区分开(输入逻辑、业务逻辑,以及UI逻辑),同时提供这些元素之间的松耦合。这个模式指定了每一种逻辑应该位于应用程序的哪个位置。UI逻辑属于视图。输入逻辑属于控制器。业务逻辑属于模型。这种分隔有助于你在创建应用程序时管理复杂性,因为它能够让你在一次将精力集中于实现的某一方面。举个例子,你可以集中在视图,而不依赖于业务逻辑。 除了管理复杂性以外,测试应用程序时MVC模式比基于Web表单的ASP.NET应用程序要简单得多。举个例子,在一个基于Web表单的ASP.NET应用程序中,一个类既用于显示输出,也用于响应用户输入。为基于Web表单的ASP.NET应用程序编写自动测试程序是很复杂的,因为要测试每个页面,你必须初始化页面类,它的所有子控件,以及应用程序中其他有所依赖的类。因为为了运行页面初始化了这么多的类,所以编写专用于应用程序单独部分的测试就变得很困难了。测试基于Web表单的ASP.NET应用程序因此比测试MVC应用程序更加难以实施。除此以外,基于Web表单的ASP.NET应用程序需要一个Web服务器。MVC框架将组件进行了解耦,并且大量使用了接口,使得测试独立于框架其他部分的组件成为可能。 MVC应用程序三个主要组件之间的松耦合也提升了并行开发的程度。举个例子,一个开发者可以开发视图,第二个开发者可以开发控制器逻辑,而第三个开发者可以将精力集中于模型中的业务逻辑。 1.1 决定如何创建MVC应用程序 你必须认真考虑是使用ASP.NET MVC框架实现Web应用程序,还是使用ASP.NET Web表单模型来实现Web应用程序。MVC框架并没有取代Web表单模型;你可以选择使用MVC框架(如果你已经有基于Web表单的应用程序,它们可以继续像往常一样工作)。 对于一个特定的Web站点,在你决定使用MVC框架或者Web窗体模型之前,权衡一下每一种方式的优势。 1.1.1 基于MVC的Web应用程序的优势 ASP.NET MVC框架提供了下面的优点: 通过将应用程序分为了模型、视图和控制器,它在管理复杂性方面更加的简单。 它不适用视图状态或者基于服务器的表单。对于那些想要完全控制应用程序行为

您可能关注的文档

文档评论(0)

zhengshumian + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档