kissfly
驱动小牛
驱动小牛
  • 注册日期2007-11-28
  • 最后登录2009-06-06
  • 粉丝0
  • 关注0
  • 积分41分
  • 威望310点
  • 贡献值1点
  • 好评度73点
  • 原创分2分
  • 专家分0分
阅读:2187回复:12

ASP.NET MVC初体验

楼主#
更多 发布于:2008-12-01 18:53





MVC (Modal View Controller)本来是存在于Desktop程序中的,M是指数据模型,V是指用户界面,C则是控制器,即三个核心部件。它是一个设计模式,它强制性的使应用程序的输入、处理和输出分开。
那么,为什么要使用MVC呢?大部分Web应用程序都是用像ASP、PHP、或者CFML这样的过程化语言来创建的。它们将像数据库查询语句这样的数据层代码和像HTML这样的表示层代码混在一起。经验丰富的开发者会将数据从表示层分离开来,但这通常不是很容易做到的,而 MVC从根本上可以强制性的将它们分开。

自己运行AspNetMVCPreview2-setup.msi安装,就出现了一个问题:安装后,在VS2008里面竟然没有MVC模板?!
上网查找原因,原来是因为中文版所有的安装文件默认放在2052下面,而ASP.NET MVC是英文的,所有都放在1033下面,所以导致ASP.NET MVC模板不能载入。
很幸运,修正方法也有哦,首先复制文件夹,如下图:






安装完后,VS2008中会添加一个新的项目模板"ASP.NET MVC Web Application", 如下图所示:
 





新建项目以后,VS2008会自动生成项目的文件结构。如下图所示:
 





MVC三个组成部分各有一个文件夹来存储各自的程序文件。
VS2008中的Controller/View模板:
 





当然,现在也可以在网上下载一些源代码了。
比如:包含ASP.NET MVC Framework源代码解压后,可以在MVC子文件夹里看到源码哦,如下图:
 





双击,用VS2008打开包含MVC源码工程,如图所示:
 





MVC将应用程序的Model、View及Controller三部分"优雅的"分离,真正实现了高内聚、低耦合的灵活架构,大大降低了程序的复杂性,提高了可扩展性及可重用性。
而且,网上还有很多ASP.NET MVC的课程,blog 和小例子,有兴趣的朋友可以拿研究研究:
 




http://www.microsoft.com/china/msdn/events/webcasts/shared/webcast/Series/MVC.aspx





 
http://msdn.microsoft.com/zh-cn/default.aspx

http://www.chrisvandesteeg.nl/2008/09/16/jquery-ajax-with-aspnet-mvc-preview-5/

http://www.infoq.com/cn/news/2007/12/ajax-aspnet-mvc



taiping
驱动牛犊
驱动牛犊
  • 注册日期2008-10-25
  • 最后登录2009-05-25
  • 粉丝0
  • 关注0
  • 积分45分
  • 威望208点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2008-12-02 15:29
好贴,我顶!!!
driverthe
驱动牛犊
驱动牛犊
  • 注册日期2008-10-22
  • 最后登录2009-06-22
  • 粉丝0
  • 关注0
  • 积分71分
  • 威望639点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2008-12-03 19:51
我觉得吧,使用MVC设计模式的一个最大的好处就是它简化了WEB应用开发中的TDD过程。
taiping
驱动牛犊
驱动牛犊
  • 注册日期2008-10-25
  • 最后登录2009-05-25
  • 粉丝0
  • 关注0
  • 积分45分
  • 威望208点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2008-12-03 21:23
这么好的软件!!我试试!顶一下!
worter
驱动牛犊
驱动牛犊
  • 注册日期2008-10-22
  • 最后登录2009-06-22
  • 粉丝0
  • 关注0
  • 积分71分
  • 威望639点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2008-12-04 19:28
MVC框架正是完全分离的开发模式,是一个复杂的架构模式,但多种设计模式结合在一起,使MVC模式的实现变得简单易行。
taiping
驱动牛犊
驱动牛犊
  • 注册日期2008-10-25
  • 最后登录2009-05-25
  • 粉丝0
  • 关注0
  • 积分45分
  • 威望208点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2008-12-04 21:41
真想知道MVC 模板是怎么实现的呢?好想学习一下,有老师可以教我吗?
worter
驱动牛犊
驱动牛犊
  • 注册日期2008-10-22
  • 最后登录2009-06-22
  • 粉丝0
  • 关注0
  • 积分71分
  • 威望639点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
6楼#
发布于:2008-12-04 21:46
听说ASP.NET MVC 预览版2中提供了VS2066开发环境中第一个支持MVC的模板,而且对动态数据进行了改进。
worter
驱动牛犊
驱动牛犊
  • 注册日期2008-10-22
  • 最后登录2009-06-22
  • 粉丝0
  • 关注0
  • 积分71分
  • 威望639点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2008-12-05 09:23
嗯,我个人觉得在使用过程中最大感受是,NET MVC框架实现了System.Web.IHttpRequest和IHttpResponse接口,这让单元测试能力得到了增强,单元测试可以撇开控制器而直接进行。
worter
驱动牛犊
驱动牛犊
  • 注册日期2008-10-22
  • 最后登录2009-06-22
  • 粉丝0
  • 关注0
  • 积分71分
  • 威望639点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
8楼#
发布于:2008-12-05 14:17
ASP.NET MVC框架的一些特性对Web开发人员非常重要,NET MVC框架深度整合许多用户熟悉的平台特性,而且整个架构是基于标准组件的。
taiping
驱动牛犊
驱动牛犊
  • 注册日期2008-10-25
  • 最后登录2009-05-25
  • 粉丝0
  • 关注0
  • 积分45分
  • 威望208点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2008-12-05 15:05
我觉得它最方便的是可以在网上下载源代码,对我们来说操作起来就不那么复杂了!!!
worter
驱动牛犊
驱动牛犊
  • 注册日期2008-10-22
  • 最后登录2009-06-22
  • 粉丝0
  • 关注0
  • 积分71分
  • 威望639点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
10楼#
发布于:2008-12-05 15:59
MVC framework 有更好的扩展性,允许开发人员创建他们所需要的高级结构的程序,配置自己的新的rendering engines 或specialized controllers。
worter
驱动牛犊
驱动牛犊
  • 注册日期2008-10-22
  • 最后登录2009-06-22
  • 粉丝0
  • 关注0
  • 积分71分
  • 威望639点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
11楼#
发布于:2008-12-06 16:37
很方便,使用Visual Studio 2008专业版,在创建ASP.NET MVC Web应用程序时,可以自动地创建一个测试项目。
worter
驱动牛犊
驱动牛犊
  • 注册日期2008-10-22
  • 最后登录2009-06-22
  • 粉丝0
  • 关注0
  • 积分71分
  • 威望639点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
12楼#
发布于:2008-12-06 17:40
我想补充一点,ASP.NET 3.5 Extensions 包括很多内容比如ASP.NET Application Services/Dynamic Languages Support in ASP.NET/Silverlight Controls for ASP.NET等,官方版本http://www.asp.net/mvc/ 是preview 2 或 3,学习网上资料应对应版本。
游客

返回顶部