内容介绍
《精通ASP.NET 3.5企业级开发》由浅入深、循序渐进地介绍了.NET3.5的新技术,包括新控件、新功能和新的类,还讲述到了Microsoft公司*发行的LINQ查询方式,并简单介绍了其在VisualStudio2008中的应用情况。全书共分29章,内容涵盖了分析、设计、开发和测试这4个软件工程的主要步骤。通过4个实例(会员软件系统、客户关系管理系统CRM、办公自动化系统OA、网上书店系统)讲解了软件的开发过程。《精通ASP.NET 3.5企业级开发》*的特色在于实践知识多于理论知识,力求让读者通过亲自动手来掌握ASP.NET3.5新技术。
目录
- 第1章用户需求的分析与处理1
- 1.1用户提出自己的需求1
- 1.2系统分析人员分析用户的需求2
- 1.2.1分析人员体验用户环境2
- 1.2.2分析并确定调研结果3
- 1.3用户与项目管理人员确定最终需求4
- 1.4根据最终需求确定工作环境5
- 1.4.1软件环境5
- 1.4.2硬件环境5
- 第2章项目计划安排7
- 2.1项目计划软件7
- 2.1.1创建一个进度表8
- 2.1.2使用不同的图表显示项目进度8
- 2.2实现此项目需要的资源10
- 2.3如何写好项目计划安排表11
- 2.4前期的项目计划表11
- 第3章概念性系统设计13
- 3.1概念设计的原则13
- 3.2将用户需求模块化14
- 3.3确定系统最终模块15
- 3.4根据模块划分完善项目计划表17
- 第4章模块的详细设计18
- 4.1UML18
- 4.1.1为什么用UML18
- 4.1.2UML包括的内容19
- 4.2分析设计工具Visio19
- 4.2.1为什么用Visio19
- 4.2.2使用Visio设计模块20
- 4.3用图例实现设计23
- 4.3.1用例图实现业务流程的设计24
- 4.3.2类图实现静态模块结构的设计26
- 4.3.3类图与类图之间的关系26
- 4.3.4部署整个设计的架构27
- 第5章数据库设计28
- 5.1罗列数据信息28
- 5.2根据数据信息构建表结构29
- 5.3数据库构建工具PowerDesigner31
- 5.3.1使用构建工具PowerDesigner31
- 5.3.2PowerDesigner的使用31
- 5.4用PowerDesigner构建设计好的数据表33
- 5.5生成数据库34
- 第6章系统架构设计36
- 6.1三层架构的组成36
- 6.2数据访问层38
- 6.2.1数据访问逻辑组件38
- 6.2.2业务实体38
- 6.2.3数据访问代码分析42
- 6.3用户界面层分析设计44
- 6.3.1为什么要进行界面层设计44
- 6.3.2确定界面的风格44
- 6.3.3如何进行界面设计44
- 6.4小结45
- 第7章开发前期项目准备46
- 7.1进入ASP.NET 3.5的世界46
- 7.1.1ASP.NET 3.5的优点47
- 7.1.2创建本实例的项目47
- 7.2版本控制工具VSS48
- 7.2.1VSS的使用48
- 7.2.2将项目部署到VSS50
- 7.2.3需要注意的问题50
- 7.3界面设计的相关文件51
- 7.3.1设计母版页51
- 7.3.2设计站点地图52
- 7.3.3设计皮肤文件54
- 7.4使用LINQ to SQL Classes实现数据访问组件55
- 7.4.1在项目中添加数据库连接55
- 7.4.2在项目中添加数据库映射类56
- 7.4.3LINQ to SQL在数据访问中的位置56
- 7.5小结57
- 第8章会员卡类型管理模块58
- 8.1会员卡类型实体类58
- 8.2会员卡类型实体方法60
- 8.3会员卡类型管理功能具体实现64
- 8.3.1添加会员卡类型65
- 8.3.2修改会员卡类型名称67
- 8.3.3修改会员卡积分规则68
- 8.3.4获取卡类型积分规则69
- 8.3.5将导航地图与功能结合69
- 8.4技术要点分析71
- 8.4.1界面布局技术要点71
- 8.4.2业务实体的属性映射72
- 8.4.3StringBuild类的使用72
- 8.4.4使用.NET 3.5的Lambda表达式72
- 8.4.5类型转换73
- 8.4.6partial关键字73
- 8.4.7枚举enum73
- 8.4.8跨页传递参数74
- 8.4.9判断会员卡类型名称是否重复74
- 8.4.10System.Linq命名空间75
- 8.4.11LINQ数据连接上下文75
- 8.5小结75
- 第9章会员资料管理模块76
- 9.1会员资料实体类76
- 9.2会员资料实体方法78
- 9.3会员资料管理功能具体实现82
- 9.3.1添加验证数据功能82
- 9.3.2添加配置数据源功能83
- 9.3.3添加功能的代码设计85
- 9.3.4使用GridView控件修改会员资料87
- 9.3.5修改资料功能的代码及测试89
- 9.3.6获取会员资料界面设计90
- 9.3.7获取会员资料代码设计92
- 9.3.8会员资料管理功能集成测试94
- 9.4技术要点分析95
- 9.4.1界面布局技术要点95
- 9.4.2日期型数据95
- 9.4.3GridView控件中的列属性DataFormatString96
- 9.4.4AutoPostBack96
- 9.4.5页面验证97
- 9.4.6正则表达式97
- 9.4.7分页数据显示98
- 9.4.8数据源类型99
- 9.5小结99
- 第10章商品管理模块100
- 10.1商品信息实体类100
- 10.2商品信息实体方法101
- 10.3商品管理功能具体实现104
- 10.3.1销售和退货界面设计105
- 10.3.2销售和退货代码实现106
- 10.3.3测试销售和退货功能107
- 10.3.4积分反馈规则设计及实现108
- 10.3.5积分反馈功能设计及实现113
- 10.3.6商品管理功能集成测试115
- 10.4技术要点分析115
- 10.4.1界面布局技术要点115
- 10.4.2DropDownList数据源的添加116
- 10.4.3关联表实体的数据处理117
- 10.4.4LinqDataSource自定义118
- 10.4.5GridViewRow属性118
- 10.4.6GridView控件的刷新119
- 10.5小结119
- 第11章会员卡积分管理模块120
- 11.1积分管理类120
- 11.1.1获取积分方法的实现120
- 11.1.2测试获取积分功能123
- 11.1.3积分处理方法的实现124
- 11.1.4测试积分处理功能125
- 11.1.5查询历史记录方法的实现126
- 11.1.6测试查询历史记录功能127
- 11.2积分管理功能集成测试129
- 11.2.1为积分界面添加导航链接129
- 11.2.2历史记录界面获取导航参数129
- 11.3技术要点分析130
- 11.3.1GridView控件的汇总130
- 11.3.2SQL Server的CASE函数131
- 11.3.3导航参数的设置和获取132
- 11.3.4LINQ中的SUM求和133
- 11.3.5调试技巧134
- 11.3.6SqlDataReader类的使用135
- 11.3.7C#的运算符136
- 11.3.8switch关键字137
- 11.3.9var关键字137
- 11.4小结138
- 第12章权限管理模块139
- 12.1创建登录界面139
- 12.1.1ASP.NET 3.5的注册控件140
- 12.1.2设计Default.aspx默认主页141
- 12.1.3ASP.NET 3.5的登录控件141
- 12.1.4创建默认错误页面144
- 12.2用户信息的存储144
- 12.2.1查看创建的用户144
- 12.2.2用.NET配置工具管理用户145
- 12.3角色权限管理146
- 12.3.1创建角色147
- 12.3.2管理角色的访问权限148
- 12.4测试角色的访问规则149
- 12.4.1测试管理员访问权限149
- 12.4.2测试普通用户访问权限150
- 12.5代码设计技术要点150
- 12.5.1使用.NET配置工具的注意事项150
- 12.5.2在Web.config中指定默认错误页151
- 12.5.3在程序中访问错误配置节151
- 12.5.4管理Forms身份验证服务的类151
- 12.5.5Membership类的功能152
- 12.5.6Membership类在Web.config文件中如何配置152
- 12.5.7使用Membership类管理用户153
- 12.5.8MembershipUser:用户信息类153
- 12.5.9在Web.config文件中配置角色管理155
- 12.5.10使用Roles类管理角色155
- 12.5.11将用户角色配置在自己的数据库中156
- 12.6小结157
- 第13章项目的测试158
- 13.1软件的测试158
- 13.1.1测试的目的158
- 13.1.2测试的方法159
- 13.1.3传统测试的问题及解决方案159
- 13.2测试的工具160
- 13.2.1Visual Studio 2008中的NUnit160
- 13.2.2用NUnit进行测试161
- 第14章部署及发行165
- 14.1书写软件的配置说明165
- 14.1.1软件要求包括的文档165
- 14.1.2软件运行环境的要求165
- 14.2软件的部署166
- 14.2.1整理软件运行需要的文件资源166
- 14.2.2Visual Studio 2008提供的部署模板166
- 14.2.3创建Web安装项目167
- 14.2.4裸机测试部署好的程序169
- 14.3如何检验软件的质量169
- 第15章客户关系管理系统CRM的设计170
- 15.1CRM的分类和价值体现170
- 15.1.1CRM的分类170
- 15.1.2CRM的价值体现171
- 15.2企业的CRM需求分析171
- 15.2.1企业的需求列表171
- 15.2.2分析企业的需求172
- 15.2.3体验企业业务流程并确定最终需求172
- 15.3系统模块设计172
- 15.3.1根据需求确定模块内容173
- 15.3.2分析功能模块并设计类图173
- 15.4数据库设计175
- 15.4.1数据库的表信息175
- 15.4.2数据库的表关系179
- 15.4.3数据库的操作类180
- 15.5开发前期的项目构建180
- 15.5.1创建项目180
- 15.5.2设计母版页180
- 第16章基础配置模块183
- 16.1区域设置183
- 16.1.1添加区域183
- 16.1.2设计“选择区域”用户控件187
- 16.1.3添加区域中的城市189
- 16.1.4用主细表方式查看区域和城市192
- 16.2客户等级设置193
- 16.2.1客户等级的设计193
- 16.2.2客户等级的代码实现194
- 16.3客户状态设置195
- 16.4客户业务类型设置196
- 16.5部门设置196
- 16.6基础配置模块集成测试198
- 16.7代码设计技术要点200
- 16.7.1DataList控件的属性和模板200
- 16.7.2DataList控件如何使用200
- 16.7.3XML文件的概念及用途201
- 16.7.4XML文件的优缺点202
- 16.7.5XML文件与HTML文件的区别202
- 16.7.6XPath方法202
- 16.7.7LINQ实体关系图203
- 16.8小结204
- 第17章客户管理模块205
- 17.1客户资料的管理205
- 17.1.1客户资料中常用的用户控件205
- 17.1.2设计客户资料实体类206
- 17.1.3设计客户资料实体方法207
- 17.1.4添加客户资料210
- 17.1.5修改客户资料211
- 17.1.6设计GridView控件的模板列213
- 17.1.7查询客户资料215
- 17.2联系人资料的管理218
- 17.2.1添加联系人218
- 17.2.2修改联系人资料222
- 17.2.3查询联系人223
- 17.2.4联系人生日提醒功能224
- 17.3客户管理模块集成测试225
- 17.4代码设计技术要点226
- 17.4.1SQL Server中的模糊查询226
- 17.4.2LINQ的模糊查询226
- 17.4.3日期控件的使用227
- 17.4.4验证控件ValidationSummary的使用方法228
- 17.4.5日期型数据的算术操作228
- 17.4.6数据库空值DBNull的使用技巧229
- 17.4.7LINQ实体类和实体类之间的关系230
- 17.4.8LINQ的泛型查询结果IQueryable231
- 17.5小结231
- 第18章员工管理模块232
- 18.1员工资料管理232
- 18.1.1员工资料的实体类232
- 18.1.2员工资料的实体方法234
- 18.1.3实现对员工的添加和编辑235
- 18.2工作日志管理237
- 18.2.1设计日志的登记功能237
- 18.2.2用主细表方式实现日志的查询240
- 18.3联系记录管理242
- 18.3.1为销售人员设计最近的联系记录242
- 18.3.2用查询实现联系记录的快速浏览245
- 18.4计划任务管理246
- 18.4.1计划任务的实体和方法246
- 18.4.2使用MultiView控件实现计划任务管理248
- 18.4.3设计SqlDataSource的多表查询语句251
- 18.5员工管理模块集成测试252
- 18.6代码设计技术要点253
- 18.6.1使用SQL语句查询区间范围与使用LINQ的区别253
- 18.6.2LinqDataSource控件中参数的动态设置253
- 18.6.3Page的首次加载属性IsPostBack254
- 18.6.4提高Web页面性能的技巧254
- 18.7小结255
- 第19章客户服务管理模块256
- 19.1客户投诉管理256
- 19.1.1客户投诉功能的界面设计256
- 19.1.2创建存储过程257
- 19.1.3使用存储过程实现记录的添加(LINQ方式)258
- 19.1.4用主细表方式实现对投诉的处理259
- 19.2客户新需求管理261
- 19.2.1客户新需求的登记261
- 19.2.2用存储过程无代码实现需求的修改262
- 19.3客户合同管理264
- 19.3.1合同管理264
- 19.3.2合同到期提示功能265
- 19.4实施项目管理266
- 19.4.1实施项目的总结266
- 19.4.2认识ASP.NET的缓存268
- 19.4.3页面缓存的使用方法268
- 19.4.4用缓存提高实施项目的查询性能268
- 19.5客户服务管理模块集成测试270
- 19.6代码设计技术要点270
- 19.6.1数据类型的比较方法CompareTo270
- 19.6.2数据缓存Cache的使用271
- 19.6.3存储过程中输出参数的使用272
- 19.6.4SqlCommand命令中的输入输出参数272
- 19.7小结273
- 第20章OA系统的需求设计274
- 20.1分析OA的用户需求274
- 20.1.1中小企业的OA需求列表274
- 20.1.2分析企业需求275
- 20.1.3进行需求调研并确定最终需求275
- 20.2设计OA的系统模块275
- 20.2.1根据需求分析模块276
- 20.2.2设计各模块的类和方法277
- 20.3为OA系统构建数据库278
- 20.3.1根据需求构建数据库278
- 20.3.2.NET 3.5自动生成的数据库281
- 20.4开发前期的项目构建282
- 20.4.1使用Menu控件搭建OA系统的项目模板283
- 20.4.2为系统添加数据库实体类284
- 第21章管理者特区设置模块285
- 21.1使用MultiView控件设置权限285
- 21.1.1管理角色285
- 21.1.2用户的管理287
- 21.1.3赋予用户角色权限289
- 21.2考勤设置290
- 21.3部门设置293
- 21.4公告管理295
- 21.4.1发布公告295
- 21.4.2滚动显示公告内容296
- 21.5管理者特区集成测试297
- 21.6代码设计技术要点298
- 21.6.1SQL Server的日期函数298
- 21.6.2服务器端如何动态输出脚本块299
- 21.6.3引用母版页中的内容300
- 21.6.4Menu控件的特色301
- 21.6.5以编程方式访问Menu控件301
- 21.7小结302
- 第22章个人办公室管理模块303
- 22.1密码管理303
- 22.1.1设计登录界面303
- 22.1.2修改密码304
- 22.1.3找回密码305
- 22.1.4使用SMTP虚拟服务器发送邮件306
- 22.2短信息管理307
- 22.2.1发送短信息307
- 22.2.2接收短信息308
- 22.2.3查看发送信息记录311
- 22.3邮箱管理312
- 22.3.1邮件的SMTP设置312
- 22.3.2发送邮件314
- 22.3.3接收邮件316
- 22.4个人日程安排317
- 22.4.1日程安排317
- 22.4.2当日日程提醒功能319
- 22.5个性化设置320
- 22.5.1Profile的配置320
- 22.5.2使用Profile实现个性化网页320
- 22.6个人办公室管理模块集成测试322
- 22.7代码技术要点分析323
- 22.7.1获取登录用户的信息323
- 22.7.2POP3和SMTP324
- 22.7.3用ProfileSection实现配置文件的编辑324
- 22.8小结325
- 第23章信息共享区管理模块326
- 23.1知识库资料管理326
- 23.1.1文件的上传326
- 23.1.2浏览服务器上的文件328
- 23.1.3文件的下载330
- 23.1.4文件的查询332
- 23.2在线人员管理333
- 23.2.1查看在线人员333
- 23.2.2向在线人员发送信息335
- 23.2.3当前用户的登录和注销335
- 23.3浏览公告历史记录336
- 23.4信息服务管理337
- 23.4.1用Web Service实现天气预报337
- 23.4.2在程序中使用Web Service338
- 23.5信息共享区管理模块集成测试339
- 23.6代码技术要点分析340
- 23.6.1Web Service的概念340
- 23.6.2Web Service在.NET中的应用341
- 23.6.3文件和目录操作的类341
- 23.6.4用代码创建DataTable343
- 23.6.5获取网站中其他网页的内容343
- 23.7小结344
- 第24章人力资源管理模块345
- 24.1工资管理345
- 24.1.1工资计算公式的设计345
- 24.1.2工资的发放349
- 24.2绩效管理352
- 24.2.1考核员工352
- 24.2.2查询员工考核记录354
- 24.3培训管理355
- 24.4招聘管理355
- 24.4.1空缺申报355
- 24.4.2空缺查看并处理357
- 24.5人力资源管理模块集成测试358
- 24.6简单OA系统集成测试358
- 24.7代码技术要点分析360
- 24.7.1字符串的操作方法361
- 24.7.2SelectedText、SelectedValue、SelectedItem 3者的区别361
- 24.7.3LoginStatus控件的使用362
- 24.8小结362
- 第25章网上书店的设计363
- 25.1书店系统的用户需求363
- 25.1.1用户根据业务流程提出需求363
- 25.1.2项目小组分析用户的需求364
- 25.1.3与用户一起确定最终需求364
- 25.2根据需求设计系统的功能364
- 25.2.1划分系统的功能模块364
- 25.2.2设计各模块的功能及方法365
- 25.3根据功能设计数据库366
- 25.3.1数据库中的表结构366
- 25.3.2数据库的操作类(LINQ)369
- 25.4构建项目模板369
- 25.4.1创建项目369
- 25.4.2设计项目的母版页370
- 25.4.3设计网站的默认Default页370
- 25.5小结371
- 第26章目录管理模块372
- 26.1用户的登录372
- 26.1.1用户的注册372
- 26.1.2用户的登录373
- 26.1.3显示用户的登录状态375
- 26.2浏览网站中的书籍目录375
- 26.2.1添加书籍的分类目录375
- 26.2.2浏览书籍的分类目录378
- 26.2.3删除书籍的分类目录380
- 26.3目录管理模块集成测试383
- 26.3.1后台管理页面383
- 26.3.2获取母版页中的导航列表384
- 26.4代码设计技术要点385
- 26.4.1Web.config中的验证属性authentication385
- 26.4.2泛型386
- 26.4.3泛型的优缺点386
- 26.4.4LINQ数据集到泛型集合的转换387
- 26.4.5用Repeater控件绑定单个数据项387
- 26.5小结388
- 第27章图书管理模块389
- 27.1商品供应商管理389
- 27.1.1设计供应商管理功能的界面389
- 27.1.2实现供应商管理功能390
- 27.2图书资料管理391
- 27.2.1图书入库功能的界面设计392
- 27.2.2图书入库功能的代码实现392
- 27.2.3图书资料的修改396
- 27.2.4图书浏览功能397
- 27.2.5图书搜索功能399
- 27.3图书管理模块集成测试402
- 27.4代码设计技术要点402
- 27.4.1正则表达式操作类Regex403
- 27.4.2判断数据库中字段是否为空404
- 27.4.3分析字符串方法Split405
- 27.4.4LINQ中的事务处理机制405
- 27.5小结406
- 第28章购物篮管理模块407
- 28.1显示商品详细信息407
- 28.1.1设计购物界面407
- 28.1.2设计购物功能408
- 28.2添加商品到购物篮409
- 28.2.1设计购物篮界面410
- 28.2.2自定义配置文件提供程序ProfileProvider411
- 28.2.3实现购物篮内容的添加和保存425
- 28.3购物篮中商品的价格计算、修改和删除429
- 28.3.1修改购物篮中图书的数量430
- 28.3.2计算购物篮内的总价值430
- 28.3.3移除购物篮中的商品432
- 28.4集成测试注意事项432
- 28.5代码设计技术要点433
- 28.5.1Dictionary集合433
- 28.5.2ProfileProvider配置提供程序434
- 28.6小结435
- 第29章订单管理模块436
- 29.1自定义账户地址436
- 29.1.1在母版页中实现下订单功能436
- 29.1.2在购物篮中实现提交订单功能437
- 29.1.3设计账户地址用户控件437
- 29.1.4保存账户地址信息440
- 29.1.5账户地址的Profile设置441
- 29.2送货地址443
- 29.3银行卡支付信息444
- 29.4提交订单446
- 29.4.1设计地址确认控件446
- 29.4.2在订单中实现地址确认功能446
- 29.5订单完成447
- 29.5.1设计所购商品的显示控件447
- 29.5.2设计订单的完成功能448
- 29.6代码设计技术要点453
- 29.6.1Wizard控件的概述453
- 29.6.2Wizard控件的使用453
- 29.6.3SQL Server的系统函数454
- 29.7小结455