标题：C#入门经典（第5版）
图书信息
  作者：沃森(Karli Watson) (作者), 内格尔(Christian Nagel) (作者), 齐立波 (编译), 黄静 (合著者) 
出版社: 清华大学出版社; 第1版 (2010年12月1日) 
外文书名: Beginning Visual C#2010
平装: 887页 
正文语种: 简体中文 
开本: 16 
ISBN: 9787302241300, 7302241309 
条形码: 9787302241300 
产品尺寸及重量: 25.6 x 18.4 x 4 cm ; 1.3 Kg
内容简介
《C#入门经典(第5版)》全面讲解C# 2010和.net架构编程知识，为您编写卓越C# 2010程序奠定坚实基础。C#入门经典系列是屡获殊荣的C#名著和超级畅销书。最新版的《C#入门经典(第5版)》 全面讲解C# 2010基础知识，浓墨重彩地描述web和windows编程以及数据访问(数据库和xml)等内容，详细介绍C#编程工具以及visual studio 2010中的visual C# 2010开发环境。贯穿全书的分步说明和极富启迪意义的示例指引您使用高效C# 2010代码得心应手地编写程序。
《C#入门经典(第5版)》主要内容简介
·解释变量和表达式等基本C# 2010语法知识
·介绍泛型的含义和用法
·讨论windows编程和windows窗体
·介绍C#改进内容、lambda表达式和扩展方法
·解释windows应用程序部署方法
·讨论xml并简要介绍linq
·深入探讨调试和错误处理方法
·演示有效wpf和wCf技术
《C#入门经典(第5版)》一书的作者karli watson是infusion development 公司高级顾问，并担任boost-net的技术架构师和it自由撰稿人、作家和开发人员。他曾编著多本-net(尤其是C#)书籍，极擅长以浅显易懂的方式阐明复杂技术主题。
《C#入门经典(第5版)》一书的另一作者Christian nagel是微软技术代言人、微软mvp，拥有逾25年的软件开发经验。Christian熟悉各种语言和平台，曾编写多本.net图书，并多次在国际会议上发表重要演讲。 
编辑推荐
《C#入门经典(第5版)》：非常权威的Visual C和-NET软件开发书籍[1]
August 5，2010
TheValuelnvestor
《C#入门经典(第5版)》是初出茅庐的编程新手的良师益友。富有经验的编程人员则可使用《C#入门经典(第5版)》巩固学习．NET架构、C#、OOP、Windows窗体、Web服务和ASP-NET等领域的知识。《C#入门经典(第5版)》将为读者深入研究这些领域的高级主题奠定坚实基础。“试一试”练习都简明扼要。我目前仍在学习《C#入门经典(第5版)》，乐此不疲，陶醉其中。
Wrox畅销书，C#经典名著！
2009年度全行业优秀畅销书品种
2006～2008年最畅销的C群入门教程!
2008年全国高校出版社优秀销为一等奖!
2006年最受读者喜爱的十大技术开发类图书!
2005年最权威的十大IT图书!
C#2010最新版
Wrox编程图书
十周年新装庆生 
作者简介
作者：（美国）沃森（Karli Watson） （美国）内格尔（Christian Nagel） 编译：齐立波 合著者：黄静
Karli Watson是Infusion Development的顾问，Boost-net的技术架构师和IT自由撰稿专业人士、作家和开发人员。他主攻．NET(尤其是C#和后来的WPF)，为几家出版商编写了多本围绕这个领域的图书。他擅长以便于任何有学习热情的人理解的方式阐述复杂的理念，并投入了大量时间研究新技术，找出可教给其他人的新东西。
在工作之余（这种时间似乎很少），Karli喜欢到山上滑雪，或者尝试发表他的小说。他喜欢穿颜色鲜亮的衣服，也许有一天他自己会建立一个网站。Karli编写了本书的1～14、12、25和26章。
Christian Nagel是Microsoft区域总监、Microsoft MVP，是Thinktecture的合作伙伴，CN创新技术的拥有者，他是一位软件架构师和开发人员，为开发Microsoft-NET解决方案提供培训和咨询服务。他拥有超过25年的软件开发经验。Christian从PDP 11和VAX/VMS系统开始踏入其计算机生涯，此后接触了各种语言和平台。自从2000年以来，（那时.NET还只是一个技术框架）他就开始使用各种.NET技术建立大量的.NET解决方案。他具备深厚的Microsoft技术功底，编写了大量.NET图书，并获得了Microsoft认证培训师和专业开发人员的证书。Christian在国际会议发表演讲，例如echEd和Tech Days，并肩动INETA Europe来支持.NET用户组。可以通过网站联系Christian，在Christian编写了本书的17～20章。
Jacob Hammer Pedersen是Elbek & Vejrup的一位资深应用程序开发人员，他刚能拼写BASIC时就开始了编程，BASIC也是他使用的第种编程语言。在20世纪90年代早期，他开始使用Pascal在PC上编程，不久就改用C++，目前，他仍非常迷恋c什。90年代中期，他的兴趣又改变了，这次是Visual Basic。2000年夏，他发现了C#，之后开始满心欢喜地研究这门语言。他主要工作在Microsoft平台上，其他的工作领域包括MS Office开发、SQL Server、COM和Visual Basic-Net。
齐立波，计算机专业硕士、大学讲师，一直从事C/C++和C#程序设计方面的教学与科研工作，曾参与编写多本计算机教材，并为软件公司翻译过大量的技术文档。
黄静，计算机专业博士，在程序设计、软件工程和网络安全等方面有着多年的研究和实战经验，曾为，NET技术在国内的推广作出了重要贡献，翻译和发表了多篇有关，NET的技术文档和文章。 
目录
第Ⅰ部分 C#语言 
第1章 C#简介 3 
1.1 .net framework的含义 3 
1.1.1 .net framework的内容 4 
1.1.2 使用.net framework编写应用程序 4 
1.2 C#的含义 7 
1.2.1 用C#能编写什么样的应用程序 7 
1.2.2 本书中的C# 8 
1.3 visual studio 2010 8 
1.3.1 visual studio 2010 express产品 9 
1.3.2 解决方案 9 
1.4 小结 9 
1.5 本章要点 10 
第2章 编写C#程序 11 
2.1 开发环境 12 
2.1.1 visual studio 2010 12 
2.1.2 visual C# 2010 express edition 14 
2.2 控制台应用程序 15 
2.2.1 solution explorer 19 
2.2.2 properties窗口 20 
2.2.3 error list窗口 20 
2.3 windows forms应用程序 21 
2.4 小结 25 
2.5 本章要点 25 
第3章 变量和表达式 27 
3.1 C#的基本语法 27 
3.2 C#控制台应用程序的基本结构 30 
3.3 变量 31 
3.3.1 简单类型 31 
3.3.2 变量的命名 35 
3.3.3 字面值 36 
3.3.4 变量的声明和赋值 38 
3.4 表达式 39 
3.4.1 数学运算符 39 
3.4.2 赋值运算符 43 
3.4.3 运算符的优先级 44 
3.4.4 名称空间 45 
3.5 小结 47 
3.6 练习 48 
3.7 本章要点 49 
第4章 流程控制 51 
4.1 布尔逻辑 51 
4.1.1 布尔赋值运算符 54 
4.1.2 按位运算符 55 
4.1.3 运算符优先级的更新 59 
4.2 goto语句 60 
4.3 分支 61 
4.3.1 三元运算符 61 
4.3.2 if语句 61 
4.3.3 switCh语句 65 
4.4 循环 68 
4.4.1 do循环 68 
4.4.2 while循环 71 
4.4.3 for循环 73 
4.4.4 循环的中断 77 
4.4.5 无限循环 78 
4.5 小结 78 
4.6 练习 79 
4.7 本章要点 79 
第5章 变量的更多内容 81 
5.1 类型转换 81 
5.1.1 隐式转换 82 
5.1.2 显式转换 83 
5.1.3 使用Convert命令进行显式转换 86 
5.2 复杂的变量类型 89 
5.2.1 枚举 89 
5.2.2 结构 93 
5.2.3 数组 96 
5.3 字符串的处理 102 
5.4 小结 106 
5.5 练习 107 
5.6 本章要点 108 
第6章 函数 109 
6.1 定义和使用函数 110 
6.1.1 返回值 111 
6.1.2 参数 113 
6.2 变量的作用域 120 
6.2.1 其他结构中变量的作用域 122 
6.2.2 参数和返回值与全局数据 124 
6.3 main( )函数 125 
6.4 结构函数 128 
6.5 函数的重载 128 
6.6 委托 130 
6.7 小结 133 
6.8 练习 133 
6.9 本章要点 134 
第7章 调试和错误处理 135 
7.1 vs和vce中的调试 135 
7.1.1 非中断(正常)模式下的调试 136 
7.1.2 中断模式下的调试 144 
7.2 错误处理 152 
7.2.1 try...catch...finally 153 
7.2.2 列出和配置异常 157 
7.2.3 异常处理的注意事项 158 
7.3 小结 159 
7.4 练习 159 
7.5 本章要点 159 
第8章 面向对象编程简介 161 
8.1 面向对象编程的含义 162 
8.1.1 对象的含义 162 
8.1.2 一切皆对象 165 
8.1.3 对象的生命周期 165 
8.1.4 静态和实例类成员 166 
8.2 oop技术 167 
8.2.1 接口 167 
8.2.2 继承 169 
8.2.3 多态性 171 
8.2.4 对象之间的关系 172 
8.2.5 运算符重载 173 
8.2.6 事件 174 
8.2.7 引用类型和值类型 174 
8.3 windows应用程序中的oop 175 
8.4 小结 177 
8.5 练习 177 
8.6 本章要点 178 
第9章 定义类 179 
9.1 C#中的类定义 179 
9.2 system.objeCt 184 
9.3 构造函数和析构函数 185 
9.4 vs和vCe中的oop工具 190 
9.4.1 Class view窗口 190 
9.4.2 对象浏览器 192 
9.4.3 添加类 193 
9.4.4 类图 194 
9.5 类库项目 196 
9.6 接口和抽象类 199 
9.7 结构类型 201 
9.8 浅度和深度复制 203 
9.9 小结 203 
9.10 练习 204 
9.11 本章要点 204 
第10章 定义类成员 205 
10.1 成员定义 205 
10.1.1 定义字段 206 
10.1.2 定义方法 206 
10.1.3 定义属性 207 
10.1.4 在类图中添加成员 212 
10.1.5 重构成员 215 
10.1.6 自动属性 216 
10.2 类成员的其他议题 217 
10.2.1 隐藏基类方法 217 
10.2.2 调用重写或隐藏的基类方法 219 
10.2.3 嵌套的类型定义 220 
10.3 接口的实现 220 
10.4 部分类定义 224 
10.5 部分方法定义 225 
10.6 示例应用程序 227 
10.6.1 规划应用程序 227 
10.6.2 编写类库 228 
10.6.3 类库的客户应用程序 235 
10.7 call hierarchy窗口 236 
10.8 小结 237 
10.9 练习 237 
10.10 本章要点 238 
第11章 集合、比较和转换 239 
11.1 集合 239 
11.1.1 使用集合 240 
11.1.2 定义集合 246 
11.1.3 索引符 247 
11.1.4 给Cardlib添加Cards集合 250 
11.1.5 关键字值集合和idiCtionary 252 
11.1.6 迭代器 254 
11.1.7 深复制 259 
11.1.8 给Cardlib添加深复制 261 
11.2 比较 263 
11.2.1 类型比较 263 
11.2.2 值比较 268 
11.3 转换 283 
11.3.1 重载转换运算符 284 
11.3.2 as运算符 285 
11.4 小结 286 
11.5 练习 286 
11.6 本章要点 287 
第12章 泛型 289 
12.1 泛型的概念 289 
12.2 使用泛型 291 
12.2.1 可空类型 291 
12.2.2 system.ColleCtions.generiC名称空间 297 
12.3 定义泛型类型 307 
12.3.1 定义泛型类 308 
12.3.2 定义泛型接口 319 
12.3.3 定义泛型方法 319 
12.3.4 定义泛型委托 321 
12.4 变体 321 
12.4.1 协变 322 
12.4.2 抗变 323 
12.5 小结 324 
12.6 练习 324 
12.7 本章要点 325 
第13章 其他oop技术 327 
13.1 ::运算符和全局名称空间限定符 327 
13.2 定制异常 329 
13.3 事件 331 
13.3.1 事件的含义 331 
13.3.2 处理事件 332 
13.3.3 定义事件 334 
13.4 扩展和使用Cardlib 343 
13.5 小结 351 
13.6 练习 352 
13.7 本章要点 352 
第14章 C#语言的改进 353 
14.1 初始化器 353 
14.1.1 对象初始化器 354 
14.1.2 集合初始化器 356 
14.2 类型推理 359 
14.3 匿名类型 360 
14.4 动态查找 364 
14.4.1 dynamiC类型 365 
14.4.2 idynamiCmetaobjeCtprovider 369 
14.5 高级方法参数 369 
14.5.1 可选参数 369 
14.5.2 命名参数 371 
14.5.3 命名参数和可选参数的规则 375 
14.6 扩展方法 375 
14.7 lambda表达式 379 
14.7.1 复习匿名方法 379 
14.7.2 把lambda表达式用于匿名方法 380 
14.7.3 lambda表达式的参数 383 
14.7.4 lambda表达式的语句体 384 
14.7.5 lambda表达式用作委托和表达式树 385 
14.7.6 lambda表达式和集合 386 
14.8 小结 388 
14.9 练习 389 
14.10 本章要点 390 
第Ⅱ部分 windows 编 程 
第15章 windows编程基础 393 
15.1 控件 393 
15.1.1 属性 394 
15.1.2 控件的定位、停靠和对齐 395 
15.1.3 anchor和dock属性 395 
15.1.4 事件 396 
15.2 button控件 398 
15.2.1 button控件的属性 398 
15.2.2 button控件的事件 398 
15.2.3 添加事件处理程序 399 
15.3 label和linklabel控件 400 
15.4 textbox控件 401 
15.4.1 textbox控件的属性 401 
15.4.2 textbox控件的事件 402 
15.4.3 添加事件处理程序 404 
15.5 radiobutton和CheCkbox控件 407 
15.5.1 radiobutton控件的属性 408 
15.5.2 radiobutton控件的事件 408 
15.5.3 CheCkbox控件的属性 408 
15.5.4 CheCkbox控件的事件 409 
15.5.5 groupbox控件 409 
15.6 riChtextbox控件 412 
15.6.1 riChtextbox控件的属性 412 
15.6.2 riChtextbox控件的事件 413 
15.7 listbox和CheCkedlistbox控件 418 
15.7.1 listbox控件的属性 418 
15.7.2 listbox控件的方法 419 
15.7.3 listbox控件的事件 420 
15.8 listview控件 422 
15.8.1 listview控件的属性 422 
15.8.2 listview控件的方法 424 
15.8.3 listview控件的事件 424 
15.8.4 listviewitem 425 
15.8.5 Columnheader 425 
15.8.6 imagelist控件 425 
15.9 tabControl控件 431 
15.9.1 tabControl控件的属性 432 
15.9.2 使用tabControl控件 432 
15.10 小结 434 
15.11 练习 434 
15.12 本章要点 434 
第16章 windows窗体的高级功能 435 
第17章 部署windows应用程序 465 
第Ⅲ部分 web 编 程 
第18章 asp-net web编程 503 
第19章 web服务 557 
第20章 部署web应用程序 581 
第Ⅳ部分 数 据 访 问 
第21章 文件系统数据 597 
第22章 xml 633 
第23章 linq简介 657 
第24章 应用linq 695 
第Ⅴ部分 其 他 技 术 
第25章 windows presentation 
第26章 windows Communication Foundation 787 
第27章 windows workflow foundation 819 
附录A 习题答案 839