----------------------
Windows Phone 7手机开发、
.Net培训、期待与您交流! ----------------------
如今,许多业务开发人员都必须使用两种(或多种)编程语言:用于业务逻辑和表示层的高级语言(如 Visual C# 或 Visual Basic)和可与数据库交互的查询语言(如 Transact-SQL)。这要求开发人员精通多种语言才能奏效,同时也导致在开发环境中语言不匹配。例如,使用数据访问 API 对数据库执行查询的应用程序会将查询指定为用引号括起的字符串。编译器不能读取此查询字符串,因此不会检查是否有错误,如语法无效或引用的列或行是否实际存在。不会检查查询参数的类型,也不支持 IntelliSense。
语言集成查询 (LINQ) 使开发人员能够在应用程序代码中形成基于集合的查询,而不必使用单独的查询语言。您可以编写针对各种可枚举数据源(即实现 IEnumerable 接口的数据源)的 LINQ 查询,可枚举数据源包括驻留在内存中的数据结构、XML 文档、SQL 数据库和 DataSet 对象等。虽然这些可枚举数据源以多种方式实现,但它们都公开相同的语法和语言构造。由于可以使用编程语言本身形成查询,因此您不必使用编译器无法理解或验证的以字符串形式嵌入的其他查询语言。通过提供编译时类型和语法检查以及 IntelliSense,将查询集成到编程语言也使