C# 4.0 的 Visual Studio 2010 示例
我们将 C# 示例分为两种不同的类别:
- 语言示例
- LINQ 示例
语言示例
语言示例帮助您熟悉各种 C# 语言功能。这些示例包含在 LanguageSamples 文件夹中。
专门针对 C# 4.0 的示例有:
- 命名的和可选的
- Office 示例
- Python 示例
- 简单变化
以下是语言示例的完整列表:
- 匿名委托:演示如何使用未命名的委托来减少应用程序的复杂性。
- 数组:演示如何使用数组。
- 特性:演示如何创建自定义特性类、如何在代码中使用这些类以及如何通过反射查询它们。
- 集合类:演示如何生成可与 foreach 语句一起使用的非泛型集合类。
- COM 互操作第一部分:演示如何使用 C# 与 COM 对象交互操作。
- COM 互操作第二部分:演示如何将 C# 服务器与 C++ COM 客户端一起使用。
- 命令行:演示简单的命令行处理和数组索引过程。
- 条件方法:演示条件方法,这类方法提供了一个功能强大的机制来根据是否定义了某个符号来包括或省略方法调用。
- 委托:演示如何声明委托,如何将委托映射到静态方法和实例方法,以及如何将委托合并为多播委托。
- 事件:演示如何在 C# 中声明、调用和配置事件。
- 显式接口:演示如何显式地实现接口成员以及如何从接口实例访问这些成员。
- 泛型:演示如何生成可与 foreach 语句一起使用的泛型集合类。
- Hello World:一个 Hello World 应用程序。
- 索引器第一部分:演示 C# 类如何声明索引器以便像访问数组一样访问对象。
- 索引器第二部分:演示如何实现使用索引属性的类。索引属性使您可以使用表示类似于数组的集合的类。
- 库:演示如何使用编译器选项从多个源文件创建 DLL;此外还演示如何在其他程序中使用创建的库
- 命名的和可选的 (C# 4.0):演示用作方法重载的一种替代方式的命名参数和可选参数
- 可为 null:演示可以设置为 null 的值类型,例如 double 和 bool
- Office 示例 (C# 4.0):演示动态功能和 COM 互操作如何简化在 C# 4.0 中调用 Microsoft Office 的操作
- OLEDB:演示如何在 C# 中通过创建数据集并向其中添加表来使用 Microsoft Access 数据库。
- 运算符重载:演示用户定义的类如何能够重载运算符
- 分部类型:演示如何在多个 C# 源代码文件中定义类和结构
- PInvoke:演示如何从 C# 中调用导出的 DLL 函数
- 属性:演示如何声明和使用属性;同时阐释抽象属性
- Python 示例 (C# 4.0):了解如何通过使用 C# 4.0 中的动态功能调用 Python 脚本
- 安全性:讨论 .NET Framework 安全性并演示如何在 C# 中通过使用权限类和权限特性修改安全权限
- 简单变化 (C# 4.0):演示如何在泛型接口和委托中支持协变和逆变
- 结构:演示如何在 C# 中使用结构。
- 线程处理:演示各种线程活动,如创建和执行线程、同步线程、在线程间交互以及使用线程池等
- 不安全:演示如何在 C# 中使用非托管代码(即,使用指针的代码)
- 用户转换:演示如何定义用户定义的类型与其他类型之间的转换
- 版本控制:演示如何在 C# 中使用 override 和 new 关键字进行版本控制
- XML 文档:演示如何使用 XML 编写代码文档
- Yield:演示如何使用 yield 关键字来筛选集合中的项
LINQ 示例
这些示例可帮助您快速了解 LINQ。这些示例还可作为具有使用 LINQ 经验的用户的参考和指南,此外,示例中还包括了一些便捷的实用工具。这些示例包含在 LinqSamples 文件夹中。
- DynamicQuery:用于在运行时创建 LINQ 查询的代码。
- LinqToNorthwind:有关如何使用 LINQ To SQL 查询数据库的基本示例
- LinqToXmlDataBinding:将 LINQ to XML 代码绑定到 WPF 控件
- ObjectDumper:用于在文本模式下将来自 LINQ 查询的输出写入到屏幕的实用工具
- PasteXmlAsLinq:自动将 XML 转换为 LINQ to XML 的 Visual Studio 外接程序。
- QueryVisualizer:使 LINQ to SQL 开发人员能够查看自己的查询对应的 SQL,而且还可以在网格中查看查询结果。
- Reflector:通过反射 API,使用 LINQ 来对代码中的对象执行正确查询
- RSS:此示例可充当聚合多个 RSS 源的微型 Web 服务器
- SampleQueries:此示例是最重要的示例,其中包含约 500 个有关如何在 LINQ to Objects、LINQ to SQL、LINQ to XML 和 LINQ to DataSet 中使用每个查询运算符的示例。
- SimpleLambdas:几个有关如何编写和使用 lambda 表达式的示例
- SimpleLinqToObjects:LINQ 示例中的 hello world 示例。此示例演示使用 LINQ to Objects 执行简单的内存中对象查询是多么容易。
- SimpleLinqToXml:LINQ to XML 使用入门。
- WebServiceLinqProvider(TerraService):TerraServer-USA Web 服务的自定义 LINQ 提供程序和客户端。
-
白皮书:下列白皮书以 Word 格式存储在此目录中:
- LINQ 项目概述
- C# 和 VB 的 LINQ to SQL 概述
- 标准查询运算符
- LINQ to XML 概述
- WinFormsDataBinding:了解如何在 Windows 窗体中使用网格显示 LINQ 查询。此示例包含一个一对多查询示例。
- XQuery:另一个简单的 LINQ to XML 示例查询。此示例演示了编写 LINQ to XML 查询所需的最少代码
LINQ 示例数据库连接问题
如果您的开发计算机上安装了 SQL Server Express,则示例的默认连接字符串在未经修改的情况下应该可以正常工作。下面是另一个连接字符串,如果您没有使用 SQL Express,但安装了 SQL Server,则可以根据自己的需要修改此字符串。您可能需要修改在示例连接字符串中可能出现的 test 单词。
实现效果如下:PZ73H-PZ73X手动刀型闸阀, PZ73H-PZ73X刀型闸阀, J15W-10T-16T黄铜丝口截止阀, J15W-10T-16T铜质内丝截止阀, J15W-J45W全铜质截止阀, J15W-J45W铜质截止阀, J15W-J45W铜制截止阀, J15W-J45W全铜截止阀, J15W-J45W黄铜截止阀, J15W-J45W铜截止阀, SD341X-SD343H蜗轮传动伸缩蝶阀, SD341X-SD343H管网法兰式伸缩蝶阀, Z41H-Z41W手动法兰闸阀, Z41H-Z41W手动闸阀, PZ73H-PZ73X手动刀闸阀, PZL73H-PZL73X链轮刀闸阀, PZ573H-PZ573X伞齿轮对夹式刀型闸阀, PZ73H-PZ73X刀闸阀, Z15W-Z45W黄铜闸阀, SD341X-SD343H双法兰伸缩蝶阀, SD341X-SD343H法兰伸缩蝶阀, SD341X-SD343H铸钢伸缩蝶阀, SD941X-SD943H电动伸缩蝶阀, SD641X-SD643H气动伸缩蝶阀, SD341X-SD343H蜗轮伸缩蝶阀, SD41X-SD43H手动伸缩蝶阀, SD341X-SD343H伸缩蝶阀, RRHX-Z41X明杆法兰闸阀, DMZ73H-DMZ73X暗杆刀型闸阀, PZ573H-PZ573X伞齿轮刀形闸阀, PZ73H-PZ73X手动刀形闸阀, PZL73H-PZL73X链轮刀形闸阀, PQ340F-PQ340Y-PQ340H上装式偏心半球阀, PQ340F-PQ340Y-PQ340H侧装式偏心半球阀, PQ640F-PQ640Y-PQ640H气动偏心半球阀, PQ940F-PQ940H-PQ940Y电动偏心半球阀, PQ340H-PQ340Y-PQ340F双偏心半球阀, Q641F-Q641FH气动法兰球阀, HGS07衬氟直通视镜, PZ973H-PZ973X电动刀闸阀, PZ673H-PZ673X气动刀闸阀, CJ123H多功能压力表针型阀, H44H-H44W不锈钢止回阀, Q47F固定式球阀, DMF直角式脉冲电磁阀, H72H-H72Y对夹式高压止回阀, ZDLQ-ZAZQ高温导热油调节阀, XH41X橡胶柔性止回阀, HC41X不锈钢消声止回阀, AH42F-A42F燃气管道安全阀, AH42F-A42F天然气安全阀, 美标法兰, 德标法兰, 日标法兰, 国标法兰, 机械部法兰, 化工部法兰, 法兰盘, 不锈钢法兰, 法兰连接, 对焊法兰, 平焊法兰, PZ973H-PZ973X电动刀形闸阀, PZ673H-PZ673X气动刀形闸阀
string connString =
"server=test;database=northwind;user id=test;password=test";
在某些 SQL Express 安装中,您可能没有启动用户实例的权限。如果您收到与之相关的错误消息,请尝试从连接字符串中移除子句“;user instance = true”。
确保您要访问的 Northwind 数据库的副本没有标记为只读。如有必要,请浏览到您尝试访问的 NORTHWIND.MDF 的副本,右击该文件,选择“属性”。清除“只读”特性。
据用户报告,在一些运行速度较慢的计算机上,或者在使用虚拟 PC 时,一些数据库应用程序在首次运行时会显示错误。尝试运行该示例两到三次。
示 例附带的 Northwind 数据库的自定义副本没有附带 LDF(日志)文件。这是有意为之,因为这样 LDF 和 MDF 文件就不会不同步。在运行使用数据库的示例,或从 Visual Studio 中的“服务器资源管理器”连接到数据库时,将自动创建 LDF 文件。如果未先创建日志文件就使用 SQL Server Management Studio,则您可能会在连接到 MDF 文件时遇到问题。