作者:empty 页数:2248 出版社:empty |
empty
Contents
C#文档
入门
简介
类型
程序构建基块
主要语言区域
教程
选择你的第一课
基于浏览器的教程
Helloworld
C#中的数字
分支和循环
列表集合
在本地环境中工作
设置你的环境
C#中的数字
分支和循环
列表集合
基础
程序结构
概述
Main方法
顶级语句
类型系统
概述
命名空间
类
记录
接
泛型
匿名类型
面向对象的编程
概述
对象
继承
多形性
功能技术
模式匹配
弃元
析构元组和其他类型
异常和错误
概述
使用异常
异常处理
创建和引发异常
编译器生成的异常
编码样式
标识符名称
C#编码约定
教程
如何显示命今行参数
类简介
面向对象的C#
C#和.NET中的继承
转换类型
使用模式匹配生成数据驱动的算法
如何使用try-catch处理异常
如何使用finally执行清理代码
C#中的新增功能
C#10.0(预览版7)
C#9.0
C#8.0
C#7.0-7.3
编译器的重大更改
C#版本历史记录
与.NET库的关系
版本兼容性
教程
浏览记录类型
探索顶级语句
探索对象中的模式
使用默认接方法安全地更新接
用默认接方法创建mix in功能
探索索引和范围
使用可为空引用类型
生成和使用异步流
教程
探索字符串内插-交互式
探索字符串内插-在环境中
字符串内插的高级方案
控制台应用程序
REST客户端
使用LINQ
使用特性
C#概念
可为空引用类型
可以为null的引用迁移
解决可以为null的警告
方法
属性
索引器
迭代器
委托和事件
委托简介
System.Delegate和delegate关键字
强类型委托
委托的常见模式
事件简介
标准.NET事件模式
已更新的.NET事件模式
区别委托和事件
语言集成查询(LINQ)
LINQ概述
查询表达式基础
C#中的LINQ
在C#中编写LINQ查询
查询对象的集合
从方法中返回查询
在内存中存储查询结果
对查询结果进行分组
创建嵌套组
对分组操作执行子查询
按连续键对结果进行分组
在运行时动态指定谓词筛选器
执行内部联接
执行分组联接
执行左外部联接
对join子句的结果进行排序
使用组合键进行联接
执行自定义联接操作
在查询表达式中处理null值
在查询表达式中处理异常
编写安全高效的代码
表达式树
表达式树简介
表达式树说明
异步编程场景
异步编程模型
异步返回类型
取消任务
取消任务列表
在一段时间后取消任务
在异步任务完成时对其进行处理
异步文件访问
创建自定义特性
使用反射访问特性
泛型接中的变体
创建变体泛型接
在泛型集合的接中使用变体
委托中的变体
在委托中使用变体
对Func和Action泛型委托使用变体
如何执行表达式树
如何修改表达式树
如何使用表达式树来生成动态查询
在VisualStudio中调试表达式树
支持表达式树的框架类型
执行表达式
解释表达式
生成表达式
翻译表达式
总结
本机互操作性
版本控制
操作指南C#文章
文章索引
将字符串拆分为子字符串
连接字符串
搜索字符串
修改字符串内容
比较字符串
如何捕捉非CLS异常
.NET Compiler Platform SDK(Roslyn API)
.NET Compiler Platform SDK(Roslyn API) 概述
了解编译器API模型
使用语法
使用语义
使用工作区
使用语法可视化工具浏览代码
源生成器
快速入门
语法分析
语义分析
语法转换
教程
生成首个分析器和代码修补程序
C#编程指南
概述
编程概念
概述
异步编程
概述
属性
概述
如何使用特性创建C/C++联合
集合
协变和逆变
概述
表达式树
概述
Debug View语法
迭代器
语言集成查询(LINQ)
概述
C#中的LINQ入门
LINQ查询简介
LINQ和泛型类型
基本LINQ查询操作
使用LINQ进行数据转换
LINQ查询操作中的类型关系
LINQ中的查询语法和方法语法
支持LINQ的C#功能
演练:用C#编写查询(LINQ)
标准查询运算符概述
概述
标准查询运算符的查询表达式语法
标准查询运算符按执行方式的分类
对数据进行排序
Set运算
筛选数据
限定符运算
投影运算
数据分区
联接运算
数据分组
生成运算
相等运算
元素运算
转换数据类型
串联运算
聚合运算
LINQ to Objects
概述
LINQ和字符串
操作指南
如何对某个词在字符串中出现的次数进行计数(LINQ)
如何查询包含一组指定词语的句子(LINQ)
如何查询字符串中的字符(LINQ)
如何将LINQ查询与正则表达式合并在一起
如何查找两个列表之间的差集(LINQ)
如何按任意词或字段对文本数据进行排序或筛选(LINQ)
如何重新排列带分隔符的文件的字段(LINQ)
如何合并和比较字符串集合(LINQ)
如何从多个源填充对象集合(LINQ)
如何使用组将一个文件拆分成多个文件(LINQ)
如何联接不同文件的内容(LINQ)
如何在CSV文本文件中计算列值(LINQ)
LINQ和反射
如何使用反射查询程序集的元数据(LINQ)
LINQ和文件目录
概述
如何查询具有指定特性或名称的文件
如何按扩展名对文件分组(LINQ)
如何查询一组文件夹中的总字节数(LINQ)
如何比较两个文件夹的内容(LINQ)
如何查询目录树中的一个或多个最大的文件(LINQ)
如何在目录树中查询重复文件(LINQ)
如何:查询文件夹中的文件的内容(LINQ)
如何使用LINQ查询ArrayList
如何为LINQ查询添加自定义方法
LINQ to A DO.NET(门户网站页)
后用数据源以进行LINQ查询
对LINQ的VisualStudio IDE和工具支持
反射
序列化(C#)
概述
传递值类型参数
传递引用类型参数
如何将对象数据写人XML文件
如何从XML文件中读取对象数据
演练:在VisualBasic中保持对象
语句、表达式和运算符
概述
语句
Expression-Bodied成员
相等和相等性比较
相等比较
如何为类型定义值相等性
如何测试引用相等性(标识)
类型
强制转换和类型转换
装箱和取消装箱
如何将字节数组转换为int
如何将字符串转换为数字
如何在十六进制字符串与数值类型之间转换
使用类型dynamic
演练:创建并使用动态对象(C#和VisualBasic)
类、结构和记录
多形性
使用Override和New关键字进行版本控制
了解何时使用Override和New关键字
如何重写ToString方法
成员
成员概述
抽象类、密封类及类成员
静态类和静态类成员
访问修饰符
字段
常量
如何定义抽象属性
如何在C#中定义常量
属性
属性概述
使用属性
接属性
限制访问器可访问性
如何声明和使用读/写属性
自动实现的属性
如何:使用自动实现的属性实现轻量类
方法
方法概述
本地函数
ref返回值和局部变量
参数
快速参考
如何了解向方法传递结构和向方法传递类引用之间的区别
隐式类型的局部变量
如何在查询表达式中使用隐式类型的局部变量和数组
扩展方法
如何实现和调用自定义扩展方法
如何为枚举创建新方法
命名自变量和可选自变量
如何在Office编程中使用命名自变量和可选自变量
构造函数
构造函数概述
使用构造函数
实例构造函数
私有构造函数
静态构造函数
如何编写复制构造函数
终结器
对象和集合初始值设定项
如何使用对象初始值设定项初始化对象
如何使用集合初始值设定项初始化字典
嵌套类型
分部类和方法
如何在查询中返回元素属性的子集
接
显式接实现
如何显式实现接成员
如何显式实现两个接的成员
委托
概述
使用委托
带有命名方法的委托与匿名方法
如何合并委托(多播委托)(C#编程指南)
如何声明、实例化和使用委托
数组
概述
单维数组
多维数组
交错数组
对数组使用for each
将数组作为参数传递
隐式类型的数组
字符串
使用字符串进行编程
如何确定字符串是否表示数值
索引器
概述
使用索引器
接中的索引器
属性和索引器之间的比较
事件
概述
如何订阅和取消订阅事件
如何发布符合.NET准则的事件
如何在派生类中引发基类事件
如何实现接事件
如何实现自定义事件访问器
泛型
泛型类型参数
类型参数的约束
泛型类
泛型接
泛型方法
泛型和数组
泛型委托
C++模板和C#泛型之间的区别
运行时中的泛型
泛型和反射
泛型和特性
文件系统和注册表
概述
如何循环访问目录树
如何获取有关文件、文件夹和驱动器的信息
如何创建文件或文件夹
如何复制、删除和移动文件和文件夹
如何提供文件操作进度对话框
如何写入文本文件
如何读取文本文件中的内容
如何一次一行地读取文本文件
如何在注册表中创建注册表项
互操作性
.NET互操作性
互操作性概述
整型数值类型
nint和nu int本机整数类型
浮点型数值类型
内置数值转换
char
枚举类型
元组类型
可以为null的值类型
引用类型的功能
内置引用类型
记录(record)
class
可为空引用类型
访问修饰符
快速参考
如何使用C#功能访问Office互操作对象
如何在COM互操作编程中使用索引属性
如何使用平台调用播放WAV文件
演练:Office编程(C#和VisualBasic)
COM类示例
语言参考
概述
配置语言版本
类型
值类型
概述
bool
结构类型
引用类型
接
void
var
内置类型
非托管类型
默认值
关键字
概述
修饰符
可访问性级别
可访问性域
可访问性级别的使用限制
内部
private
protected
public
受保护的内部
私有受保护
abstract
async
const
event
extern
in(泛型修饰符)
new(成员修饰符)
out(泛型修饰符)
override
readonly
sealed
static
unsafe
virtual
volatile
语句关键字
语句类别
跳转语句
break
continue
goto
return
异常处理语句
throw
try-catch
try-finally
try-catch-finally
Checked和Unchecked
概述
checked
unchecked
fixed语句
lock语句
方法参数
快速参考
params
in(参数修饰符)
ref
out(参数修饰符)
命名空间关键字
命名空间
using
using的上下文
using指
using语句
外部别名
泛型类型约束关键字
new约束
where
访问关键字
base
this
文字关键字
null
true和false
default
上下文关键字
快速参考
add
get
in it
partial(类型)
partial(方法)
remove
set
when(筛选条件)
value
yield
查询关键字
快速参考
from子句
where子句
select子句
group子句
更改为
order by子句
join子句
let子句
ascending
descending
on
equals
by
in
运算符和表达式
概述
算术运算符
Boolean逻辑运算符
按位和移位运算符
相等运算符
比较运算符
成员访问运算符和表达式
类型测试运算符和强制转换表达式
用户定义的转换运算符
与指针相关的运算符
赋值运算符
Lambda表达式
模式
++=运算符
--=运算符
?:运算符
!(null包容) 运算符
??和??=运算符
=>运算符
::运算符
await运算符
默认值表达式
delegate运算符
is运算符
name of表达式
new运算符
sizeof运算符
stack alloc表达式
switch表达式
true和false运算符
with表达式
运算符重载
语句
迭代语句
选择语句
特殊字符
概述
$--字符串内插
@--逐字字符串标识符
编译器读取的属性
全局属性
调用方信息
可为空的静态分析
杂项
不安全代码和指针
预处理器指令
编译器选项
概述
语言选项
输出选项
输入选项
错误和警告选项
代码生成选项
安全选项
资源选项
杂项选项
高级选项
XML文档注释
生成API文档
建议的标记
示例
编译器消息
规范
C#6.0草稿规范
介绍
词法结构
基本概念
类型
变量
转换
表达式
语句
命名空间
类
结构
数组
接
枚举
委托
异常
特性
不安全代码
文档注释
C#7.0-10.0功能
C#7.0功能
模式匹配
本地函数
Out变量声明
引发表达式
二进制文本
数字分隔符
异步任务类型
C#7.1功能
异步主方法
默认表达式
推导元组名
使用泛型的模式匹配
C#7.2功能
只读引用
ref-like类型的编译时安全性
非尾随命名参数
专用受保护
条件引用
前导数字分隔符
C#7.3功能
非托管的泛型类型约束
无论上下文是可移动还是不可移动, 索引fixed'字段都不应要求固定
基于模式的fixed'语句
Ref局部重新分配
Stack alloc数组初始值设定项
面向自动实现的属性字段的特性
初始化表达式中的表达式变量
元组相等(==)和元组不等(!=)
改