CSharpFeeds - All your C# feeds in one place.

Sponsors

Tuesday, March 10, 2009

Framework Design Guidelines: LINQ Support

by BradA via Brad Abrams on 3/10/2009 1:12:37 AM

Continuing in our weekly blog post series that highlights a few of the new image[5]_thumb[2]_thumb[2]_thumbadditions to the Framework Design Guidelines 2nd edition.. This content is found in the LINQ section of Chapter 9: Common Design Patterns.

Supporting LINQ through IEnumerable<T>

DO implement IEnumerable<T> to enable basic LINQ support.

Such basic support should be sufficient for most in-memory data sets. The basic LINQ support will use the extension methods on IEnumerable<T> provided in the .NET Framework. For example, simply defineing as follows:

public class RangeOfInt32s : IEnumerable<int> {
  
public IEnumerator<int> GetEnumerator() {…}
  
IEnumerator IEnumerable.GetEnumerator() {…}
}

Doing so Allows for the following code, despite the fact that RangeOfInt32s did not implement a Where method:.

var a = new RangeOfInt32s();
var b = a.Where(x => x>10);

RICO MARIANI

Keeping in mind that you’ll get your same enumeration semantics, and putting a Linq façade on them does not make them execute any faster or use less memory.

email it!bookmark it!digg it!

Original Post: Framework Design Guidelines: LINQ Support

Subscribe

New Feed

Product Spotlight

Recently Updated Sources

Legal Note

The content of the postings is owned by the respective author. CSharpFeeds is not responsible for the contents of the postings. This site is automatically generated and cannot be reviewed for abusive content. If you find abusive content on CSharpFeeds, please contact us. Designated trademarks and brands are the property of their respective owners. All rights reserved.

Advertise with us