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.
Enjoy!
Great News. Plenty to work through in this build it appears. Keep up the good work.
Scooped you on the announcement at 12:54 pm PST.
Glad to see the DLinq Designer and the updated documentation. The Walkthrough sample form has an uncanny resemblance to the figure in my "Anomalies and Issues with VB 9 DLinq code" post. Hopefully, the updated version will address the problems I encountered with bound controls and the earlier CTP.
Watch for an updated and illustrated LINQ article in next week’s .NETInsights newsletter from Fawcette.
–rj
Do you know if it is possible to restore a normal VB.NET intellisence in non-LINQ VB projects?
In my old VB.NT projects all words like "order", "group", etc. have become reserved and I have got a few number of syntax. errors…
BTW, in C# all is going normal…
Alexey: The LINQ compiler replaces the regular compiler, so there’s no way to switch LINQ on and off. Our longer-term plan is for the LINQ keywords to be contextual so we don’t have to reserve them.
Is there still no Extension Methods, lambda expression and Dynamic Interfaces? When would them be available?
Pingback: Boczek's .NET Blog
Scott Guthrie has posted a tutorial on the use of LINQ with ASP.NET 2.0 last night (Sunday) at http://weblogs.asp.net/scottgu/archive/2006/05/14/446412.aspx.
Scott used C# 3.0 for the tutorial, but converting to VB 9.0 doesn’t look like a difficult project.
–rj
Fred, the May CTP does include Extension Methods in VB. See http://devauthority.com/blogs/jwooley/archive/2006/05/21/1095.aspx for a write-up.
Hi Paul –
We are putting together a gathering of ADO.NET, and data connectivity lumaries for an informal gathering during TechEd 2006. This will be an opportunity for everyone who lives and breaths data connectivity, ADO.NET and who is looking to get a first hand feel of everything on the horizon for ADO.NET, LINQ and .NET and meet some of the key players involved.
The date ? Meet up is on June 13, 2006
The time ? Between 4pm and 6.30pm
The where? Seaport Hotel in Boston.
I think you are the ideal kind of person who would be interested in this, either comment below, or shoot me an email! Of course there will be food and drink for all, so sign up fast as space is limited!
-Jonathan Bruce
.NET & XQuery Program Manager
DataDirect Technologies
B: http://jonathanbruceconnects.com/jonathan_bruce