前言 ASP.NET Web Forms是最早的 ASP.NET编程模式,是整合了 HTML、服务器控件和服务器代码的事件驱动网页。对HTML、JavaScript毫无经验的开发者也能写出Ajax网页,过于便捷自由的开发模式易让初学者不知不觉在前后端穿插商业逻辑与SQL查询,导致逻辑散乱却又紧密关联,维护与测试难度大增。对照Java Spring Framework. Ruby on Rail、CakePHP等架构,运用MVC设计模式已经成为网站开发主流;常陷于逻辑混杂泥沼的ASP.NET Web Forms网站有时会给人留下欠缺严谨性,难以构建中大型系统的非专业印象。 2009年,微软公司推出ASP.NET MVC 1.0,自此.NET 开发者有了新选择。根据MVC架构,开发人员能按直觉切割出HTML/JavaScript等UI端逻辑(View)、数据逻辑(Model)及流程衔接逻辑(Controller),无形中实践了MVC最重要的关注点分离精神。ASP.NET MVC在设计时大量应用依赖注入(DI)、AOP等设计模式,处处预留扩展与改写弹性,使架构易于调整,足以面对各种艰巨挑战。网站能结合单元测试,相比Web Forms 也是一大突破。转眼间,ASP.NET MVC已开发到第5版,架构转向OWIN开放标准并摆脱对IIS的依赖,开发者可自由切换网站平台、身份认证或是处理管道的任一程序包,可塑性几乎没有限制。它提供了高生产率的编程模型,结合ASP.NET的全部优势,促成更整洁的代码架构、测试驱动开发和强大的可扩展性。 本书涵盖ASP.NET MVC 5的开发优势技术,使用Entity Framework技术操作数据库,并包含模型、控制器、视图、辅助方法、数据注解、路由及Web API等内容,详细讲解了ASP.NET MVC的基本知识和使用方法。 本书除详细讲解的ASP.NET MVC 5开发的基础知识外,每一章节中的内容讲解后都精心设计了示例程序、案例和项目实践,由浅入深,循序渐进地引导初学者掌握每个知识点,项目实践从始至终围绕“图书销售系统”展开,从系统分析、数据库建模、项目创建开发,直至发布部署,力求让读者轻松理解并快速掌握,亲身体验完成整个项目过程,提高读者实践操作的能力。 本书由申丽芳、李莹、田林琳担任主编,参与本书编写工作的还有企业教师任斌、韩志敏、高晶、吴迪、郭志帅、肖勇,在此对他们表示衷心的感谢。本书的编写借鉴了许多现行教材的宝贵经验,在此谨向这些作者表示诚挚的感谢。由于时间仓促,加之编者水平有限,书中难免有错误或不足之处,敬请广大读者批评指正。 编者2021年5月