ASP.NETMVC程序开发实战

ASP.NETMVC程序开发实战"

作者:申丽芳、李莹、田林琳、任斌、韩志敏、高晶、吴迪、郭志帅、肖勇
ISBN:9787302587705
定价:¥49
字数:千字
页数:
出版时间:2021.11.01
开本:
版次:1-1
装帧:
出版社:清华大学出版社
简介

本书以ASP.NET中的ASP.NET MVC 5为主,使用的开发环境为Visual Studio 2019,首先介绍MVC的基本概念及ASP.NET MVC的发展历程;然后从Model的概念入手介绍ASP.NET MVC常用的数据连接方式——Entity Framework开发技术和Linq使用方法, 并逐一深入讲解Controller、View、数据验证、路由和辅助方法等内容;最后介绍微软在One ASP.NET里的服务(Service),即ASP.NET Web API,供.NET开发人员在开发Web API的 Web Service时有一个新选择。

本书的栏目设计为: 章节导读—章节要点—基础知识—项目实施,有目的、有规划、有准备、有实施具体方法,结合行业需求和专业特色,选择适合学生的项目教学,案例贯穿始终,让读者做中学、学中做。

本书适合有一定.NET开发基础,熟悉C#编程语言的读者使用,也可作为对MVC设计模式感兴趣人员的参考书。

前言

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月  

目录

第1章概述/1

1.1MVC架构概述1

1.1.1ASP.NET历史3

1.1.2ASP.NET MVC简介3

1.1.3ASP.NET MVC的新特性5

1.2ASP.NET MVC的发展7

1.2.1ASP.NET MVC 1概述7

1.2.2ASP.NET MVC 2概述7

1.2.3ASP.NET MVC 3概述8

1.2.4ASP.NET MVC 4概述8

1.2.5ASP.NET MVC 5概述9

1.3MVC与三层框架的关系10

第2章创建ASP.NET MVC应用程序/12

2.1安装环境12

2.2创建MVC应用程序15

2.3MVC应用程序结构20

2.4项目实施22

2.4.1任务一: 系统设计22

2.4.2任务二: 数据库建模23

2.5同步训练25

第3章模型和数据操作/26

3.1Model的概念26

3.2ORM27

3.3Entity Framework概述28

3.3.1DataBase First29

3.3.2Model First34

3.3.3Code First39

3.3.4数据库初始化44

3.3.5数据迁移46

3.4LINQ驱动数据查询48

3.5基于Entity Framework数据模型的CRUD52

3.5.1基于Entity Framework框架的数据查询52

3.5.2基于Entity Framework的数据更新54

3.5.3基于Entity Framework框架的数据添加和删除54

3.6项目实施55

3.6.1任务一: 使用Code First导入数据库55

3.6.2任务二: 创建模型57

3.6.3任务三: 数据迁移60

3.7同步训练62

ASP.NET MVC程序开发实战第4章控制器/63

4.1控制器介绍63

4.1.1用IController创建控制器64

4.1.2派生于Controller的控制器65

4.2控制器的创建和数据请求65

4.2.1创建控制器66

4.2.2处理输入数据70

4.3常用的动作过滤器73

4.3.1ActionName验证73

4.3.2NonAction验证75

4.3.3ChildActionOnly验证75

4.3.4RequireHttps验证76

4.3.5ValidateAntiForgeryToken验证76

4.3.6Authorize验证77

4.4Action返回类型77

4.4.1EmptyResult78

4.4.2ViewResult79

4.4.3ContentResult80

4.4.4RedirectResult81

4.4.5RedirectToRoute82

4.4.6PartialViewResult82

4.4.7FileResult83

4.4.8JsonResult86

4.4.9JavaScriptResult87

4.5项目实施90

4.5.1任务一: 用户管理90

4.5.2任务二: 用户注册95

4.5.3任务三: 用户登录100

4.6同步训练103

第5章视图/104

5.1视图的作用104

5.2视图类型106

5.2.1常规视图106

5.2.2分部视图109

5.2.3布局页110

5.3ASP.NET视图引擎113

5.3.1Razor语法114

5.3.2Razor程序代码块117

5.4控制器和视图传值方式118

5.4.1ViewData118

5.4.2ViewBag119

5.4.3TempData120

5.4.4强类型视图121

5.5项目实施124

5.5.1任务一: 导航栏设计124

5.5.2任务二: 首页图书展示128

5.5.3任务三: 实现购物车130

5.6同步训练139

第6章辅助方法/140

6.1HTML辅助方法141

6.1.1HTML辅助方法的工作原理141

6.1.2创建表单142

6.1.3Html.ActionLink和Html.RouteLink147

6.1.4渲染辅助方法148

6.1.5URL辅助方法153

6.1.6自定义辅助方法153

6.2Ajax辅助方法155

6.2.1jQuery155

6.2.2Unobtrusive Ajax157

6.2.3Ajax的ActionLink()方法159

6.2.4Ajax的表单162

6.3项目实施165

6.3.1任务一: 图书查询165

6.3.2任务二: 首页图书展示——分类管理167

6.4同步训练171

第7章数据验证/172

7.1数据注解172

7.1.1验证注解173

7.1.2显示和编辑注解178

7.1.3自定义错误提示消息及本地化180

7.2控制器操作和验证错误181

7.3自定义验证183

7.3.1自定义注解183

7.3.2IValidatableObject接口186

7.4项目实施188

7.4.1任务一: 添加验证188

7.4.2任务二: 订单管理192

7.4.3任务三: 评论198

7.5同步训练201

第8章认证与安全/202

8.1ASP.NET MVC中的安全性202

8.1.1在ASP.NET MVC中配置身份验证203

8.1.2限制对操作方法的访问203

8.1.3允许匿名调用205

8.1.4授权和输出缓存205

8.1.5隐藏关键的用户界面元素206

8.2项目实践206

8.2.1任务一: 注册、登录206

8.2.2任务二: 认证和授权209

8.3同步训练213

第9章路由/214

9.1统一资源定位符214

9.2定义特性路由215

9.2.1路由值216

9.2.2控制器路由216

9.2.3路由约束218

9.3定义传统路由219

9.3.1路由值220

9.3.2路由默认值221

9.3.3路由约束221

9.3.4特性路由和传统路由的区别222

9.4项目实践222

9.4.1任务一: 自定义路由222

9.4.2任务二: 列表分页224

9.5同步训练226

第10章ASP.NET Web API/227

10.1定义ASP.NET Web API227

10.2编写API控制器228

10.3Web API示例231

10.3.1创建Web API231

10.3.2调用Web API234

10.4项目实践238

10.5同步训练243

参考文献/244

作者简介

编辑推荐

本书涵盖ASP.NET MVC 5的所有开发优势技术,包括用C#属性定义路由技术及重写过滤器技术等。且构建 MVC应用程序的用户体验也有本质上的改进。其中书里也专一讲解了用**VisualStudio 2013创建MVC应用程序时的技术和技巧。本书包括完整的开发工具介绍以及对代码进行辅助编译和调试的技术。

作者寄语

申丽芳,女,硕士,2005年毕业于沈阳工业大学测控技术与仪器专业,本科学士,2009年毕业于沈阳工业大学计算机应用专业,研究生硕士,获得计算机技术与软件专业技术资格信息系统项目管理师认证。2009年到2019年一直从事软件的设计与开发工作,参加过大型医疗软件,RFID图书馆建设、企业ERP,OA系统和移动开发;

主持校级教研项目、多项横向科研项目及大学生创新创业项目。申请软件著作权二十多项,在刊物发表专业论文1篇。

电子资料

www.luweidong.cn

下一个