C#入门经典(第4版)

C#入门经典(第4版)
作 者: 沃森 内格尔 齐立波 黄静
出版社: 清华大学出版社
丛编项:
版权说明: 本书为公共版权或经版权方授权,请支持正版图书
标 签: VC++
ISBN 出版时间 包装 开本 页数 字数
未知 暂无 暂无 未知 0 暂无

作者简介

  齐立波,计算机专业硕士、大学讲师,一直从事C/C++和C舞程序设计方面的教学与科研工作,曾参与编写多本计算机教材,并为一些软件公司翻译过大量的技术文档。

内容简介

通过C#可以很容易地学习.NET Framework 3.5的强大功能,所以C#是开始您编程生涯的绝佳方式。本书全面阐述了C#编程的所有方面,包括C#语言本身、Windows编程、Web编程及数据源的使用等内容。学习了新的编程技巧后,《C#入门经典(第4版)》介绍了如何高效地部署应用程序和服务,论述了许多高级技术,如图形化编程。另外,还探讨了如何使用Visual C# Express 2008、Visual Web Developer Express 2008和Visual Studi0 2008的功能。所有这些内容都已更新,以反映.NET Framework 3.5和Visual Studi0 2008的变化。各章的样例代码和示例还可以用于创建强大且安全的应用程序。《C#入门经典(第4版)》语言简练,条理清晰,涵盖了Visual C#2008和.NET Framework 3.5的全部内容。通过学习本书,您将能够快速入门,轻松开发出自己的应用程序。《C#入门经典(第4版)》主要内容:C#的所有基础知识和面向对象编程;通过C#语言编写和部署Windows应用程序;开发定制的Web应用程序和利用Web服务的技巧;数据访问技术,包括使用LINQ处理XML数据;通过单击按钮将应用程序发布到Web上;使用Windows Presentation Foundation、Windows Workflow Foundation、WindoWS Communication Foundation、GDI+和联网等其他技术。《C#入门经典(第4版)》适合于想学习使用.NET Framework编写C#程序的读者,也适合于己了解.NET,又想学习.NET 3.5或Visual Studio 2008最新功能的读者。

图书目录

第Ⅰ部分 C# 语 言

第1章 C#简介

1.1 什么是.NET Framework

1.1.1 NET Framework的内容

1.1.2 用.NET Framework编写应用程序

1.2 什么是C#

1.2.1 用C#能编写什么样的应用程序

1.2.2 本书中的C#

1.3 Visual Studio 2008

1.3.1 Visual Studio 2008 Express 产品

1.3.2 解决方案

1.4 小结

第2章 编写C#程序

2.1 开发环境

2.1.1 Visual Studio 2008

2.1.2 Visual C# 2008 ExpressEdition

2.2 控制台应用程序

2.2.1 Solution Explorer

2.2.2 Properties窗口

2.2.3 Error List窗口

2.3 Windows Forms应用程序

2.4 小结

第3章 变量和表达式

3.1 C#的基本语法

3.2 C#控制台应用程序的基本结构

3.3 变量

3.3.1 简单类型

3.3.2 变量的命名

3.3.3 字面值

3.3.4 变量的声明和赋值

3.4 表达式

3.4.1 数学运算符

3.4.2 赋值运算符

3.4.3 运算符的优先级

3.4.4 名称空间

3.5 小结

3.6 练习

第4章 流程控制

4.1 布尔逻辑

4.1.1 位运算符

4.1.2 布尔赋值运算符

4.1.3 运算符的优先级更新

4.2 goto语句

4.3 分支

4.3.1 三元运算符

4.3.2 if语句

4.3.3 switch语句

4.4 循环

4.4.1 do循环

4.4.2 while循环

4.4.3 for循环

4.4.4 循环的中断

4.4.5 无限循环

4.5 小结

4.6 练习

第5章 变量的更多内容

5.1 类型转换

5.1.1 隐式转换

5.1.2 显式转换

5.1.3 使用Convert命令进行 显式转换

5.2 复杂的变量类型

5.2.1 枚举

5.2.2 结构

5.2.3 数组

5.3 字符串的处理

5.4 小结

5.5 练习

第6章 函数

6.1 定义和使用函数

6.1.1 返回值

6.1.2 参数

6.2 变量的作用域

6.2.1 其他结构中变量的作用域

6.2.2 参数和返回值与全局数据

6.3 Main()函数

6.4 结构函数

6.5 函数的重载

6.6 委托

6.7 小结

6.8 练习

第7章 调试和错误处理

7.1 VS和VCE中的调试

7.1.1 非中断(正常)模式下的调试

7.1.2 中断模式下的调试

7.2 错误处理

7.2.1 try...catch...finally

7.2.2 列出和配置异常

7.2.3 异常处理的注意事项

7.3 小结

7.4 练习

第8章 面向对象编程简介

8.1 什么是面向对象编程

8.1.1 什么是对象

8.1.2 所有的东西都是对象

8.1.3 对象的生命周期

8.1.4 静态和实例类成员

8.2 OOP技术

8.2.1 接口

8.2.2 继承

8.2.3 多态性

8.2.4 对象之间的关系

8.2.5 运算符重载

8.2.6 事件

8.2.7 引用类型和值类型

8.3 Windows应用程序中的OOP

8.4 小结

8.5 练习

第9章 定义类

9.1 C#中的类定义

9.2 System.Object

9.3 构造函数和析构函数

9.4 VS和VCE中的OOP工具

9.4.1 Class View窗口

9.4.2 对象浏览器

9.4.3 添加类

9.4.4 类图

9.5 类库项目

9.6 接口和抽象类

9.7 结构类型

9.8 小结

9.9 练习

第10章 定义类成员

10.1 成员定义

10.1.1 定义字段

10.1.2 定义方法

10.1.3 定义属性

10.1.4 在类图中添加成员

10.1.5 重制成员

10.1.6 自动属性

10.2 类成员的其他议题

10.2.1 隐藏基类方法

10.2.2 调用重写或隐藏的基类方法

10.2.3 嵌套的类型定义

10.3 接口的实现

10.4 部分类定义

10.5 部分方法定义

10.6 示例应用程序

10.6.1 规划应用程序

10.6.2 编写类库

10.6.3 类库的客户应用程序

10.7 小结

10.8 练习

第11章 集合、比较和转换

11.1 集合

11.1.1 使用集合

11.1.2 定义集合

11.1.3 索引符

11.1.4 给CardLib添加Cards集合

11.1.5 关键字值集合和IDictionary

11.1.6 迭代器

11.1.7 深度复制

11.1.8 给CardLib添加深度复制

11.2 比较

11.2.1 类型比较

11.2.2 值比较

11.3 转换

11.3.1 重载转换运算符

11.3.2 as运算符

11.4 小结

11.5 练习

第12章 泛型

12.1 泛型的概念

12.2 使用泛型

12.2.1 可空类型

12.2.2 System.Collections.Generic 名称空间

12.3 定义泛型

12.3.1 定义泛型类

12.3.2 定义泛型接口

12.3.3 定义泛型方法

12.3.4 定义泛型委托

12.4 小结

12.5 练习

第13章 其他OOP技术

13.1 ::运算符和全局名称空间

13.2 定制异常

13.2.1 异常基类

13.2.2 给CardLib添加定制异常

13.3 事件

13.3.1 什么是事件

13.3.2 使用事件

13.3.3 定义事件

13.4 扩展和使用CardLib

13.5 小结

13.6 练习

第14章 C# 3.0语言的改进

14.1 初始化器

14.1.1 对象初始化器

14.1.2 集合初始化器

14.2 类型推断

14.3 匿名类型

14.4 扩展方法

14.5 ?表达式

14.5.1 复习匿名方法

14.5.2 把?表达式用于匿名方法

14.5.3 ?表达式的参数

14.5.4 ?表达式的语句体

14.5.5 ?表达式用作委托和表达式树

14.5.6 ?表达式和集合

14.6 小结

14.7 练习

第Ⅱ部分 Windows 编 程

第15章 Windows编程基础

15.1 控件

15.1.1 属性

15.1.2 控件的定位、停靠和对齐

15.1.3 事件

15.2 Button控件

15.2.1 Button控件的属性

15.2.2 Button控件的事件

15.3 Label和LinkLabel控件

15.4 TextBox控件

15.4.1 TextBox控件的属性

15.4.2 TextBox控件的事件

15.5 RadioButton和CheckBox控件

15.5.1 RadioButton控件的属性

15.5.2 RadioButton控件的事件

15.5.3 CheckBox控件的属性

15.5.4 CheckBox控件的事件

15.5.5 GroupBox控件

15.6 RichTextBox控件

15.6.1 RichTextBox控件的属性

15.6.2 RichTextBox控件的事件

15.7 ListBox和CheckedListBox控件

15.7.1 ListBox控件的属性

15.7.2 ListBox控件的方法

15.7.3 ListBox控件的事件

15.8 ListView控件

15.8.1 ListView控件的属性

15.8.2 ListView控件的方法

15.8.3 ListView控件的事件

15.8.4 ListViewItem

15.8.5 ColumnHeader

15.8.6 ImageList控件

15.9 TabControl控件

15.9.1 TabControl控件的属性

15.9.2 使用TabControl控件

15.10 小结

15.11 练习

第16章 Windows Forms的高级功能

16.1 菜单和工具栏

16.1.1 两个实质一样的控件

16.1.2 使用MenuStrip控件

16.1.3 手工创建菜单

16.1.4 ToolStripMenuItem控件的其他属性

16.1.5 给菜单添加功能

16.2 工具栏

16.2.1 ToolStrip控件的属性

16.2.2 ToolStrip的项

16.2.3 StatusStrip控件

16.2.4 StatusStripStatusLabel的属性

16.3 SDI和MDI应用程序

16.4 创建控件

16.4.1 LabelTextbox控件

16.4.2 调试用户控件

16.4.3 扩展LabelTextbox控件

16.5 小结

16.6 练习

第17章 使用通用对话框

17.1 通用对话框

17.2 如何使用对话框

17.3 文件对话框

17.3.1 OpenFileDialog

17.3.2 SaveFileDialog

17.4 打印

17.4.1 打印结构

17.4.2 打印多个页面

17.4.3 PageSetupDialog

17.4.4 PrintDialog

17.5 打印预览

17.5.1 PrintPreviewDialog

17.5.2 PrintPreviewControl

17.6 FontDialog和ColorDialog

17.6.1 FontDialog

17.6.2 ColorDialog

17.6.3 FolderBrowserDialog

17.7 小结

17.8 练习

第18章 部署Windows应用程序

18.1 部署概述

18.2 ClickOnce部署

18.3 Visual Studio安装和部署项目类型

18.4 Microsoft Windows安装程序结构

18.4.1 Windows Installer术语

18.4.2 Windows Installer的优点

18.5 为SimpleEditor创建安装软件包

18.5.1 规划安装内容

18.5.2 创建项目

18.5.3 项目属性

18.5.4 安装编辑器

18.5.5 File System编辑器

18.5.6 File Types编辑器

18.5.7 Launch Condition编辑器

18.5.8 User Interface编辑器

18.6 构建项目

18.7 安装

18.7.1 Welcome

18.7.2 Read Me

18.7.3 License Agreement

18.7.4 Optional Files

18.7.5 选择安装文件夹

18.7.6 确认安装

18.7.7 进度

18.7.8 结束安装

18.7.9 运行应用程序

18.7.10 卸载

18.8 小结

18.9 练习

第Ⅲ部分 Web 编 程

第19章 Web编程基础

19.1 概述

19.2 ASP.NET运行库

19.3 创建简单的Web页面

19.4 服务器控件

19.5 事件处理程序

19.6 输入的有效性验证

19.7 状态管理

19.7.1 客户端的状态管理

19.7.2 服务器端的状态管理

19.8 身份验证和授权

19.8.1 身份验证的配置

19.8.2 使用安全控件

19.9 读写SQL Server数据库

19.10 小结

19.11 练习

第20章 Web高级编程

20.1 母版页

20.2 站点导航

20.3 用户控件

20.4 个性化配置

20.4.1 个性化配置组

20.4.2 组件的个性化配置

20.4.3 定制数据类型中的个性化配置

20.4.4匿名用户的个性化配置

20.5 Web Parts

20.5.1 WebPartManager控件

20.5.2 WebPartZone控件

20.5.3 EditorZone控件

20.5.4 CatalogZone控件

20.5.5 ConnectionsZone控件

20.6 JavaScript

20.6.1 Script元素

20.6.2 变量的声明

20.6.3 定义函数

20.6.4 语句

20.6.5 对象

20.7 小结

20.8 练习

第21章 Web服务

21.1 Web服务推出之前

21.1.1 远程过程调用(RPC)

21.1.2 SOAP

21.2 使用Web服务的场合

21.2.1 宾馆旅行社代理应用程序

21.2.2 图书发布应用程序

21.2.3 客户应用程序的类型

21.2.4 应用程序的体系结构

21.3 Web服务的体系结构

21.3.1 可以调用的方法

21.3.2 调用方法

21.3.3 SOAP和防火墙

21.3.4 WS-I基本个性化配置

21.4 Web服务和.NET Framework

21.4.1 创建Web服务

21.4.2 客户程序

21.5 创建简单的ASP.NET Web服务

21.6 测试Web服务

21.7 执行Windows客户程序

21.8 异步调用服务

21.9 执行ASP.NET客户程序

21.10 传送数据

21.11 小结

21.12 练习

第22章 Ajax编程

22.1 Ajax概述

22.2 UpdatePanel控件

22.3 Timer控件

22.4 UpdateProgress控件

22.5 Web服务

22.6 扩展控件

22.7 小结

22.8 练习

第23章 部署Web应用程序

23.1 Internet Information Services

23.2 IIS配置

23.3 复制Web站点

23.4 发布Web站点

23.5 Windows安装程序

23.5.1 创建安装程序

23.5.2 安装Web 应用程序

23.6 小结

23.7 练习

第Ⅳ部分 数 据 访 问

第24章 文件系统数据

24.1 流

24.2 用于输入和输出的类

24.2.1 File类和Directory类

24.2.2 FileInfo类

24.2.3 DirectoryInfo类

24.2.4 路径名和相对路径

24.2.5 FileStream对象

24.2.6 StreamWriter对象

24.2.7 StreamReader对象

24.2.8 读写压缩文件

24.3 序列化对象

24.4 监控文件结构

24.5 小结

24.6 练习

第25章 XML

25.1 XML文档

25.1.1 XML元素

25.1.2 属性

25.1.3 XML声明

25.1.4 XML文档的结构

25.1.5 XML名称空间

25.1.6 格式良好并有效的XML

25.1.7 验证XML文档

25.2 在应用程序中使用XML

25.2.1 XML文档对象模型

25.2.2 选择节点

25.3 小结

25.4 练习

第26章 LINQ简介

26.1 LINQ的变体

26.2 第一个LINQ查询

26.2.1 用var关键字声明结果变量

26.2.2 指定数据源:from子句

26.2.3 指定条件:where子句

26.2.4 指定元素:select子句

26.2.5 完成:使用foreach循环

26.2.6 延迟执行的查询

26.3使用LINQ方法语法和?表达式

26.3.1 LINQ扩展方法

26.3.2 查询语法和方法语法

26.3.3 ?表达式

26.4 排序查询结果

26.5 orderby子句

26.6 用方法语法排序

26.7 查询大型数据集

26.8 合计运算符

26.9 查询复杂的对象

26.10 投射:在查询中创建新对象

26.11 投射:方法语法

26.12 单值选择查询

26.13 Any和All

26.14 多级排序

26.15 多级排序方法语法:ThenBy

26.16 组合查询

26.17 Take和Skip

26.18 First和FirstOrDefault

26.19 集运算符

26.20 Join查询

26.21 资源和进一步阅读

26.22 小结

26.23 练习

第27章 LINQ to SQL

27.1 对象相关映射

27.2 安装SQL Server和Northwind示例数据

27.2.1 安装SQL Server Express2005

27.2.2 安装Northwind示例数据库

27.3 第一个LINQ to SQL查询

27.4 浏览LINQ to SQL关系

27.5 进一步探讨LINQ to SQL

27.6 LINQ to SQL中的组合、排序和其他高级查询

27.7 显示生成的SQL

27.8 用LINQ to SQL绑定数据

27.9 用LINQ to SQL更新绑定数据

27.10 小结

27.11 练习

第28章 ADO.NET和LINQ over DataSet

28.1 ADO.NET概述

28.1.1 ADO.NET名称的来源

28.1.2 ADO.NET的设计目标

28.2 ADO.NET类和对象概述

28.2.1 提供者对象

28.2.2 用户对象

28.2.3 使用System.Data名称空间

28.3 用DataReader读取数据

28.4 用DataSet读取数据

28.4.1 用数据填充DataSet

28.4.2 访问DataSet中的表、行和列

28.5 更新数据库

28.5.1 给数据库添加行

28.5.2 删除行

28.6 在DataSet中访问多个表

28.6.1 ADO.NET中的关系

28.6.2 用关系导航

28.7 XML和ADO.NET

28.8 ADO.NET中的SQL支持

28.8.1 DataAdapter对象中的 SQL命令

28.8.2 直接执行SQL命令

28.8.3 调用SQL存储过程

28.9 使用LINQ over DataSet和ADO.NET

28.10 小结

28.11 练习

第29章 LINQ to XML

29.1 LINQ to XML函数构造方法

29.2 保存和加载XML文档

29.2.1 从字符串中加载XML

29.2.2 已保存的XML文档内容

29.3 处理XML片段

29.4 通过LINQ to XML生成 XML

29.5 查询XML文档

29.6 小结

29.7 练习

第Ⅴ部分 其 他 技 术

第30章 属性

30.1 什么是属性

30.2 反射

30.3 内置属性

30.3.1 System.Diagnostics.Conditional Attribute

30.3.2 System.Obsolete Attribute

30.3.3 System.Serializable

Attribute

30.3.4 System.Reflection.Assembly Delay Sign Attribute

30.4 定制属性

30.4.1 BugFix Attribute

30.4.2 System.Attribute Usage Attribute

30.5 小结

第31章 XML文档说明

31.1 添加XML文档说明

31.1.1 XML文档说明的注释

31.1.2 使用类图添加XML文档说明

31.1.3 生成XML文档说明文件

31.1.4 带有XML文档说明的应用程序示例

31.2 使用XML文档说明

31.2.1 编程处理XML文档说明

31.2.2 用XSLT格式化XML文档说明

31.2.3 文档说明工具

31.3 小结

31.4 练习

第32章 网络

32.1 联网概述

32.1.1 名称的解析

32.1.2 统一资源标识符

32.1.3 TCP和UDP

32.1.4 应用协议

32.2 网络编程选项

32.3 WebClient

32.4 WebRequest和WebResponse

32.5 TcpListener和TcpClient

32.6 小结

32.7 练习

第33章 GDI+简介

33.1 图形绘制概述

33.1.1 Graphics类

33.1.2 对象的删除

33.1.3 坐标系统

33.1.4 颜色

33.2 使用Pen类绘制线条

33.3 使用Brush类绘制图形

33.4 使用Font 类绘制文本

33.5 使用图像进行绘制

33.5.1 使用纹理画笔绘图

33.5.2 使用钢笔绘制图像

33.5.3 双倍缓冲

33.6 GDI+的高级功能

33.6.1 剪切

33.6.2 System.Drawing.Drawing2D

33.6.3 System.Drawing.Imaging

33.7 小结

33.8 练习

第 34 章  Windows Presentation Foundation

34.1 WPF的概念

34.1.1 WPF给设计人员带来的好处

34.1.2 WPF给C#开发人员带来的好处

34.2 基本WPF应用程序的组成

34.3 WPF基础

34.3.1 XAML语法

34.3.2 桌面和Web应用程序

34.3.3 Application对象

34.3.4 控件基

34.3.5 控件的布局

34.3.6 控件的样式

34.3.7 触发器

34.3.8 动画

34.3.9 静态和动态资源

34.4 用WPF编程

34.4.1 WPF用户控件

34.4.2 实现依赖属性

34.5 小结

34.6 练习

第35 章  Windows Communication Foundation

35.1 WCF是什么

35.2 WCF概念

35.2.1 WCF通信协议

35.2.2 地址、端点和绑定

35.2.3 合同

35.2.4 消息模式

35.2.5 行为

35.2.6 主机

35.3 WCF编程

35.3.1 定义WCF服务合同

35.3.2 自存储的WCF服务

35.4 小结

35.5 练习

第36章 Windows Workflow Foundation

36.1 活动

36.1.1 DelayActivity

36.1.2 SuspendActivity

36.1.3 WhileActivity

36.1.4 SequenceActivity

36.1.5 定制活动

36.2 工作流运行库

36.3 数据绑

36.4 小结