Released: Visual Studio Service Pack 1; .NET 3.5 Service Pack 1

Visual Studio Service Pack 1 and .NET 3.5 Service Pack 1 are now available for download. A new feature for C# developers called squiggles provides better error messages while you are typing your code. There are several important LINQ performance enhancements, including one that could yield a 30% speed increase in some common scenarios. There…

20

LINQ Farm: More on the LINQ Aggregate Operators

The LINQ aggregate operators allow you to perform simple math operations over the elements in a sequence. This post is designed to walk you through those operators, and give you an overview of how to use them. Table 1 shows a list of the 7 aggregate operators. Note: All the samples shown in this post…

7

LINQ Farm: More on Set Operators

This is a second post on the LINQ Set operators, the first being published while LINQ was still in beta. As mentioned in the previous post, there are four LINQ set operators: Union, Intersect, Distinct and Except. Like the other 49 LINQ operators, these methods are designed to allow you to query data which supports…

5

LINQ Farm: Lambdas

Lambdas are a simple technology with an intimidating name. They sound like they are going to be difficult to understand, but in practice prove to be relatively trivial. LINQ has an almost inordinate need for its users to declare a large number of small, simple delegates. The architects of C# decided that forcing the users…

34

LINQ Farm: Extension Methods and Scoping

There are a few scoping rules that you must keep in mind when using extensions methods. Problems with scoping and extensions methods are rare, but when you encounter them they are quite vexing. An instance method will always be called before an extension method. The runtime looks first for an instance method, if it finds…

11

Cut Development Time: Use LINQ

When Microsoft employees talk about LINQ publicly, we haven’t tended to emphasize how much time you can save by using it. This is perhaps because we don’t want LINQ to be labeled as simply another RAD tool designed to save time. Nevertheless, it is becoming clear to me that shorter development cycles may be one…

18

VCS Team Links for May 22, 2008

Rather than place the links to the most recent C# team content directly in Community Convergence, I have moved them here. This posts covers the last few weeks of posts from the C#, F# and related teams. From the C# Team Eric Lippert Method Hiding Apologia A Generic Constraint Question Reading Code Over the Telephone…

3

Charlie Speaking in Southern California

I will be presenting on C# and LINQ three times in Southern California next week at a series of user group meetings. The events will be held in the San Diego and the Los Angeles area. Lisa Feigenbaum will be flying down from Redmond with me, and she will do VB presentations at the same…

5

LINQFarm: Understanding IEnumerable<T>, Part I

The IEnumerable<T> interface is a key part of LINQ to Objects and binds many of its different features together into a whole. This series of posts explains IEnumerable<T> and the role it plays in LINQ to Objects. If you hear people talking about IEnumerable<T>, and sometimes wished you better understood its significance, then you should…

12

Community Convergence XLIII

Welcome to the forty-third issue of Community Convergence. The last few weeks have been consumed by the 2008 MVP Summit. During that annual event about 150 C# MVPs and many MVPs from other disciplines descend on Redmond for a technical summit accompanied by fun and games at local restaurants and hotels. Below I include a…

6