Hình 19-1. LINQ kiến trúc LINQ to Đối tượng giao dịch với các dữ liệu trong bộ nhớ. Bất kỳ lớp mà thực hiện các giao diện IEnumerable (Of T) (trong không gian tên ) có thể được truy vấn với các nhà khai thác truy vấn tiêu chuẩn (SQOs). | Simpo PDF Merge and Split Unregistered Version - http CHAPTER 19 USING LINQ 367 Architecture of LINQ LINQ consists of three major components LINQ to Objects LINQ to which includes LINQ to SQL formerly called DLinq LINQ to DataSets formerly called LINQ over DataSets LINQ to Entities LINQ to XML formerly called XLinq Figure 19-1 depicts the LINQ architecture which clearly shows the various components of LINQ and their related data stores. LINQ Architecture Visual Basic 2008 NET Language Integrated Query LINQ LINQ enabled data sources LINQ enabled Figure 19-1. LINQ architecture LINQ to Objects deals with in-memory data. Any class that implements the IEnumerable Of T interface in the namespace can be queried with Standard Query Operators SQOs . Note SQOs are a collection of methods that form the LINQ pattern. SQO methods operate on sequences where a sequence represents an object whose type implements the interface IEnumerable Of T or the interface IQueryable Of T . The SQO provides query capabilities including filtering projection aggregation sorting and so forth. Simpo PDF Merge and Split Unregistered Version - http 368 CHAPTER 19 USING LINQ LINQ to also known as LINQ-enabled ADO .NET deals with data from external sources basically anything can connect to. Any class that implements IEnumerable Of T or IQueryable Of T in the namespace can be queried with SQOs. The LINQ to functionality can be achieved by using the namespace. LINQ to XML is a comprehensive API for in-memory XML programming. Like the rest of LINQ it includes SQOs and it can also be used in concert with LINQ to but its primary purpose is to unify and simplify the kinds of things that disparate XML tools such as XQuery XPath and XSLT are typically used to do. The LINQ to XML functionality can be achieved by using the namespace. Note LINQ on the .NET .