ASP.NET MVC程序设计教程(第3版)
上QQ阅读APP看书,第一时间看更新

第3版前言

为了更好地为高校学生提供实用的、满足社会实际需求的优秀教材,为就业创造有利条件,我们在本书第1版《ASP.NET网页设计和网站开发》和第2版《HTML5与ASP.NET程序设计教程》的基础上,根据新技术的发展和社会需求,进行了大量的知识更新和改进,完成了第3版的编写。

本书编写思路

1.本书第1版以VS2005为开发平台,介绍了利用ASP.NET Web窗体(WebForms)和C#语言开发Web应用程序的基本设计方法;第2版以VS2010为开发平台,主要介绍了HTML5、CSS3、JavaScript基础以及WebForms的开发,同时简单介绍了利用ASP.NET MVC3和Razor视图引擎开发Web应用程序的基本技术;第3版以VS2013为开发平台,全面系统地介绍用ASP.NET MVC 5和C#语言开发Web应用程序的各种编程技术,而不再介绍WebForms的实现。

2.第3版之所以不再介绍WebForms,是因为用WebForms开发Web应用程序项目时,主要利用的是它提供的Web服务器控件来实现各种功能,这在它刚推出时的Web应用发展环境下确实是一种创新的技术。但是,随着HTML5和CSS3正式标准的发布,直接用HTML5和CSS3实现的代码设计更简单且运行效率更高,此时WebForms提供的Web服务器控件变得越来越无用。另外,Web服务器控件导致的性能问题、深度开发的灵活性问题、大型项目的单元测试问题都是WebForms无法有效解决的。而ASP.NET MVC是一种开源的、可扩展的Web开发框架,其架构的灵活性,Razor视图引擎带来的C#、HTML5、CSS3和JavaScript混合编写动态网页的方便性,跨平台性,以及对页面和数据处理逻辑的单元测试等都是WebForms所无法企及的,这种新的编程模型特别适用于大型Web项目的开发,当然也适用于中小型Web项目的开发。

3.之所以选择VS2013而不是选择VS2012或者更低版本的开发工具,是因为VS2013内置了ASP.NET MVC 5以及HTML5和CSS3正式标准的实现,而早期版本的开发工具是在Web正式标准推出前研制的,其内置的HTML5和CSS3验证功能和智能提示功能当然也无法完全符合新的正式标准。特别是VS2013提供的不同Web开发架构的混编技术,可以让开发人员在同一个项目中同时使用WebForms、MVC、Web API、实时Web以及其他架构或者任选其中的一种或多种架构,这种涉及方方面面的大范围更新和修改是早期版本的开发工具无论如何升级都无法做到的。

4.编写HTML5、CSS3、jQuery、Bootstrap、JavaScript等代码时,VS2013提供了非常方便的智能提示功能,而早期版本的智能提示功能相对都比较弱,而且在早期版本的开发工具中属于合法但正式标准不再使用的语法也容易误导初学者,这是选择VS2013作为开发平台的另一个主要原因。

5.随着天、空、地一体化需求和现代浏览器的迅速流行,以及新的Web正式标准的推出,早期的Web开发技术已经不适合当今时代的发展。作为高校学生来说,如果毕业后才发现当时所学的技术和实际需求不相符,这时就已经悔之晚矣,因此,作为本科生来说,一开始就学习成熟的新技术是提高就业能力和进一步深造的首要选择。

本书主要特点

本书是针对学习过C#语言的读者而言的,“C#语言程序设计”是本教材的先修课程。对于没有学过C#语言的读者,推荐先学习“十二五”普通高等教育本科国家级规划教材《C#程序设计及应用教程》(第3版,人民邮电出版社,马骏主编)一书,否则学习本书会有一定的难度。

作为C#编程的3本系列教材之一,本书介绍的是B/S编程技术,如果读者希望掌握C/S编程技术,推荐学习工业和信息化部“十二五”规划教材《C#网络应用编程》(第3版,人民邮电出版社,马骏主编)一书。

本书主要特点如下。

1.以目前流行的HTML5、CSS3和ASP.NET MVC为主线,选择自带ASP.NET MVC 5模板的VS2013作为开发工具,系统介绍ASP.NET Web应用程序开发的方法。

2.知识点覆盖全面,教材信息量大、例子丰富、重点突出。全书基本上涵盖了ASP.NET MVC的各种编程技术。另外,为了让读者易理解、上手快,编者在教材结构组织、知识点的选择以及如何讲解才能循序渐进并突出重点等方面经过反复推敲、调整、增删、组合,才最终完成了本书的编写,非常适合初级Web编程人员学习。

3.使用同一个项目链接本书的所有示例,让读者不但明白如何单独实现某种功能,而且还能直观地看出如何将这些技术综合到同一个Web应用程序项目中。

4.通过每章的导航页分别演示不同布局页的设计和引用办法,本书基本上是一章一种新的布局。目的是为了让读者通过这些大量的布局页设计思路和具体实现,能很快举一反三,并立即将其应用到实际开发中。

5.教材力求将晦涩难懂的技术用通俗易懂的语言表达出来,并配有大量的示例来帮助理解。读者按照本教材的顺序学习,入门快、效率高。通过阅读、理解、上机练习和调试运行,能很快掌握用ASP.NET MVC编写Web应用程序项目的各种技术。

6.教材配套资料完整。为了配合教学需要,本书还提供了与本书配套的教学大纲、实验大纲、PPT教学课件、习题参考解答以及所有例题、习题、上机练习和综合设计的参考源程序。

内容安排及学时分配

第1部分(第1章~第8章)是Web开发基础知识,如果学时有限,或者只需要学习用C#和MVC开发Web应用程序的基本技术,建议仅讲解这一部分。

第2部分(第9章~10章)简单介绍了Web开发的中、高级编程技术,这部分由于涉及其他相关知识,限于教材篇幅和授课学时限制,实际上很难在短短的两章内介绍清楚。对初学Web开发的学生来说,深入学习和理解这两章涉及的各种技术难度较大,只要求掌握书中介绍的基本用法即可,这是编写这两章内容的基本思路,各高校可根据先修课程的开设情况,灵活把握讲解这两章内容的深度和广度。但是,从项目应用开发的角度来说,这些中、高级内容又是必须掌握的技术。另外,除了这两章内容外,还有一些高级开发技术本书并没有介绍,如用户访问控制与安全性处理、单元测试等。

本书所有程序均在Windows 7操作系统、IE 11.0浏览器和VS2013简体中文旗舰版开发环境下调试通过。实际动手编写和调试程序是掌握本书知识的一个非常重要的环节,希望引起读者的高度重视。

各高校可根据实际情况,灵活调整讲授学时。各章学时分配建议如下。

本书由马骏担任主编,韩道军、肖春静、党兰学、杨阳担任副主编,马骏对全书进行了规划、编写、统稿、修改、增删、组合与定稿等工作。参与各章编写和配套资料整理的还有陈国强、范明虎、赵建辉、张磊、葛强、田军锋等。

由于编者水平有限,书中难免存在不妥之处,敬请读者批评指正。

编者

2015年5月