|TABLE OF CONTENTS|
LINQ and Visual Studio 2008's new language features
LINQ and Web applications
LINQ to Objects
LINQ to XML
LINQ to SQL
LINQ to DataSet
LINQ to Entities
Third-party LINQ Implementations
VISIT OUR OTHER LEARNING GUIDES
|Third-party LINQ Implementations|
LINQ is well known for its ability to query data types like SQL, XML and objects, as this Learning Guide has aptly demonstrated. However, LINQ is quite extensible -- that is, it can be programmed to query data types other than those cited above. This final section of the LINQ Learning Guide includes information about third-party LINQ implementations that query data from Amazon, Flickr and NHibernate.
to LinqExtender and LinqExtender
1.2 is out (Mehfuz Hossain)
This blogger offers a brief introduction to the LinqExtender tool that makes LINQ extensibility possible. The second blog entry provides an update based on the release of v1.2 of the LinqExtender.
DbLinq Project: LINQ Provider for MySql, Oracle and
At present, SQL Server is the lone database supported out of the Visual Studio 2008 box. This implementation, from George Moudry of Code2Code.net, supports several other database types. It is based on C# 3.0.
LINQ to Amazon (Fabrice Marguerie)
Here one of the authors of LINQ in Action describes a LINQ implementation that queries Amazon.com's book catalog. "The LINQ query gets converted to REST URLs supported by Amazon's Web services. These services return XML. The results are converted from XML to .NET objects using LINQ to XML," Marguerie notes.
This LINQ provider will query Flickr images. It allows for tag-only searches, free text searches and photo size searches. Programmers must get a free API from Flickr to use this third-party LINQ implementation.
This implementation, currently in v0.2 alpha, supports SharePoint list entity creation and includes a translator for LINQ-to-CAML queries. It also includes a debugger and a set of unit tests.
Linq to LLBLGen Pro, Day 0 (Frans Bouma)
LLBLGen Pro is an object-relational mapping and code generating tool for n-tier C# and Visual Basic applications. Here we link to the first installment of a series detailing the development of a LINQ to LLBLGen Pro implementation. (The full series can be found here.)
MetaLinq: LINQ to Expressions (CodePlex)
This class library lets programmers use LINQ to search and edit expressions in place.
This implementation is a set of PHP classes modeled after Extension methods in C# 3.0.
Slinq: Streaming LINQ (CodePlex)
This is a set of extension methods for implementing LINQ on data sources, such as network monitors or financial services, which provide "constantly changing data." (Paul Stovell is in the midst of a similar project, which he is calling SyncLinq.)
NHibernate (Oren Eini)
This third-party LINQ implementation, as its name implies, allows queries to NHibernate, which is a free persistence port for .NET objects and relational databases.
LINQ to Active Directory (CodePlex)
With this implementation, programmers can query an Active Directory. Author Bart de Smet writes, "Internally, queries are translated into LDAP filters, which are sent to the server using the System.DirectoryServices .NET Framework library."
Running Queries on Multi-Core Processors (Microsoft)
Parallel LINQ, or PLINQ, is an implementation made for multi-processor systems and is an important piece of the recently released Parallel FX Library. This technical article looks at the basics of PLINQ, with particular attention paid to the way it handles concurrency exceptions.
This was first published in February 2008