Some basic sample to make your code “Linq ready”

  Linq has been shipped with VS2008/.Net 3.5 and is not really new. If more and more people are getting used to its syntax, it’s sometimes hard to imagine all the scenarii where Linq to object can replace the classical way we program. During some Silverlight coding, I changed my code to make it run…

2

C# 4 expressions: loops, goto, label, if and even for ! [Part III]

We now have block and variable support in our very small meta language. Let’s try to use this basic engine to add higher functionalities. .Net 4.0 expression API also brings new instructions such as Loop, Goto, Label, IfThenElse, etc. We will add them with always the same process: adding a comprehensive method in the Block…

7

C# 4 expressions: variables [Part II]

Reading the first part is mandatory ! The goal is still the same: enhance the C# 4 expression capabilities. Now we have block support, let’s find a way to add variables. We can not really ‘code’ something without them… In our first sample, the main lambda already had a parameter and we were able to…

2

C# 4 expressions: blocks [Part I]

  Since .Net 3.5 and Linq, the C# compiler is capable of generating expression trees instead of standard executable IL. Even if Linq opens the door of meta-programming (using the code to define something else, like a Sql query), we still have a lot of limitations. A C# expression is limited to a single instruction…

22

Linq: how to share parameters between lambda expressions ?

Before going into Linq, here is again one of my pictures: Le Louvre by night, Paris   When using Linq to objects, you will quickly feel the need to pass some parameters from a method to another but it’s not so easy because each Linq method is not calling the following one. In a Linq…

27

Linq to Sql CompiledQuery container

Before we go deep into Linq to Sql, I wanted to share with you one of my pictures made last week at Chamonix Mont Blanc from "L’aiguille du midi" during some days off. Ok now let’s go. Here is just a little trick but with some interesting patterns that could be useful in some other…

10

TreeSelector : playing with generics and type inference

This piece of code is part of a personal bigger project that I am working on and I think there are interesting thing in it and I wanted to share it with you. I am trying to use generics and type inference to imagine new kind of method prototype. With all the stuff around Linq…

17

Thinking about new C# method prototypes: object as dictionary

I recently had to write a small Flickr API. I know many .Net API for Flickr already exist but I needed one for a Silverlight application. Whatever, it’s only about building some querystrings so I did it by myself. It’s been an opportunity to think again about a classical question: how to pass parameters to…

6

Visual Linq query builder for Linq to Sql: VLinq

Hi all, After almost one year of work and organization, I am very happy to share this project with you: http://code.msdn.microsoft.com/vlinq – new setup fixed (4/17/2008) The Visual Linq query builder is a Visual Studio 2008 addin. It’s a designer that helps you create Linq to Sql queries in your application. Both C# and VB projects…

81

Linq GroupByMany dynamically

Shawn asked me in my last post about GroupByMany how to use it dynamically. The answer is not easy. So here is a new post to answer to this interesting question. First you must learn a few things about being dynamic with linq.There is a very good sample from the C# team (actually we can…

9