FYI, we just released an updated community preview of our LINQ support for both VB and C#, entitled “Microsoft Visual Studio Code Name “Orcas” Language-Integrated Query, May 2006 Community Technology Preview.” Or you could just call it “the May CTP.” Anyway, this new CTP has a lot of new goodies for VB programmers, as our LINQ support is greatly expanded. To crib straight from the readme, here’s some of the stuff we did:
Enhanced DLinq Support: This CTP adds support for Inheritance, Stored Procedures, User-Defined Functions, and Optimistic Concurrency Conflict Resolution (OCCR). The new DLinq Designer provides a visual design surface for creating DLinq entity classes from database tables.
LINQ over DataSet: The full power of LINQ can now be applied to the DataSet, allowing you to use the Standard Query Operators and some DataSet-specific extensions to query against DataRows.
“Group By” Query Comprehensions: The compiler now supports “Group By” as a valid clause in LINQ Queries.
Outlining support for XML Literals in the Editor: In this release, we added outlining support for XML literals. You can now expand or collapse any Xml element literal that spans across more than one line.
Value extension property for XML axis properties: We added a Value extension property to the collections that are returned from the XML axis properties (i.e. IEnumerable(Of XElement) and IEnumerable(Of XAttribute)). This extension property does two things, it first picks up the first object in that IEnumerable, and if this object exists, it calls the “Value” property on this object (either XElement or XAttribute).
Global Xml namespace support: XML namespaces that are declared using the Imports statement can now be used in the XML literals.Select/From syntax: The previous tech preview supported using Select before From. In an effort to provide better IntelliSense™, we’re switching to the From/Select format for this CTP.
Joins don’t require “It”: You don’t need to use the iterator variable “it” anymore when performing a join operation, though it’s still required for grouping operations.
Xml axis properties syntax: The late bound Xml feature has a new name and a new distinct syntax where we wrap the element name with angle brackets. This new syntax makes the Xml axis properties visually distinct and solves problems that the previous CTP syntax had. See more information in this blog.