Wednesday, April 25, 2007

Bart de Smet Releases LINQ to SharePoint Alpha

The LINQ to SharePoint implementation promised in Bart de Smet's Coming soon - The return of IQueryable - LINQ to SharePoint announcement has arrived as an alpha version for the Orcas March 2007 CTP: LINQ to SharePoint - Alpha release available now from CodePlex with documentation, samples, and a quick-start video.

Here from Bart's blog are its featured highlights:

  • Supports writing LINQ queries for SharePoint lists in both C# 3.0 and Visual Basic 9.0
  • The SpMetal entity type creation tool supports both C# 3.0 and Visual Basic 9.0
  • Talks to SharePoint over web services or though the SharePoint Object Model
  • Most CAML query constructs are available via LINQ

Bart promises to update the alpha to Orcas Beta 1 shortly. Check the B# blog or here for availability.

Querying SharePoint with a Web services and supporting updates in the obscure XML dialect called Collaborative Application Markup Language (CAML) isn't a piece of cake, as I demonstrated in a December 2003 Visual Studio Magazine article, "Manage SharePoint Lists."

P.S. Thanks for supporting VB and C#, Bart.

The .NET Standard Query Operators (SQOs) from LINQ Update

Bart released an April 6, 2007 update to the 0.9 Release Candidate for A custom implementation of the .NET Standard Query Operators from LINQ on CodePlex. This version is intended for use with VS2005 or Orcas March 2007 CTP. The custom SQOs implement a clone of the LINQ to Objects API (the System.Linq.Enumerable class).

After you build the project, you can add a reference to BdsSoft.Linq.dll in a test project and then replace using System.Linq; with using BdsSoft.Linq; to work with the custom implementation.

Note: If you uncomment the CS30 definition to use C# 3.0 features, you'll need to add a reference to the System.Core namespace to build the BdsSoft.Query class.


Bart De Smet said...

Thanks for linking to the LINQ-to-SharePoint project; an update will arrive in the next few weeks, so stay tuned!

Keep up the good work,