LINQ Extensions

This project implements several useful extensions for the LINQ project. Currently, the project includes several functions required to allow composing LINQ query in C# from several simple functions (for example when building a LINQ query dynamically at runtime as described in one of the articles linked below). The project also implements several classes to simplify writing code in a functional way, including support for representing lazy computations. Finally, the project implements LINQ support for the C++/CLI language, which uses advanced operator overloading facilities provided by this language (in contrast to extending the language like in C# 3.0).

Project Links

Articles about LINQ and C# 3.0

  • Asynchronous Programming in C# using Iterators (11/15/2007)

    In this article we will look how to write programs that perform asynchronous operations like manipulation with network in C# using iterators without the typical inversion of control caused by the use of delegates.

  • Lazy Computation in C# on MSDN (10/6/2007)

    I think that one of the interesting things about C# 3.0 is that it gives you the ability to use many techniques known from functional languages...

  • Building LINQ Queries at Runtime in F# (8/18/2007)

    In this article I will introduce FLinq, the F# support for language integrated query and show how we can construct a database queries dynamically in a type-safe way in F#.

  • Building LINQ Queries at Runtime in C# (7/30/2007)

    Common criticism of LINQ is that it doesn't support a scenario where queries are build dynamically at the runtime. In this article I show that this can be acutally done very well for most of the common scenarios.

  • CLinq - LINQ support for the C++/CLI language (3/2/2007)

    CLinq project is a library that makes it possible to use LINQ technologies from the C++/CLI language.

  • Can't return anonymous type from method? Really? (1/23/2007)

    This article describes anonymous types - one of the new C# 3.0 features and shows interesting trick that can be used when returning anonymous type from method.

  • Concepts behind the C# 3.0 language (10/15/2006)

    In this article I'll describe concepts that influenced the design of the C# 3.0. Most of these concepts are known from other programming languages like Haskell, LISP or languages developed at Microsoft Research.

  • LINQ extensions - Simplified keyword search (7/28/2006)

    Article describes LINQ extension that adds support for returning rows that contain any or all of specified keywords in string column.

  • Calling functions in LINQ queries (6/10/2006)

    This article describes method that allows you to reuse parts of LINQ queries across data access layer.

(Published: October 11, 2007 02:42)