What's Hot

Get the Latest Orcas CTP

Orcas is coming! Plus other download goodies this month.

News flash: Microsoft has designated a launched date for Visual Studio 2008, AKA Orcas: February 27, 2008. Note that the tool is still set to be released in late 2007.

In other VS 2008 news, a blog post by a Microsoft employee in the UK pointed readers to the June CTP of Visual Studio Orcas. The blog post was cancelled within the day, yet the link (remains). I can only guess Microsoft doesn't want to share this build with the public at large, especially given that Beta 2 is touted as coming soon. That's too bad, because this is a significant build for VB developers.

The Orcas June CTP includes support for Lambda functions in VB. Lambda functions are basically inline functions, and their inclusion makes working with LINQ a lot more fun. This CTP also incorporates support for the new Nullable(Of T) syntax:

' example 1
Dim x as Integer? 
' example 2
Dim x? As Integer

You can also use operators on the nullable types, based on the type they wrap. For Integer? that means you can use all the operators as you would with Integer. For nullable types, these operators work just as the underlying type does, except they include null propagation: If either operand is null, then the result is null.

A much appreciated addition to VB in the June CTP is the inclusion of the new If operator (see the article ""Load Up With VB's Operators" in this issue for more details).

Microsoft has also released the ADO.NET Entity Framework June 2007 CTP. This update includes many functional improvements, but it still lacks a visual designer for code generation. One of the big changes the ADO.NET team has made in this version is to make the framework more interface- and attribute-based rather than require implementation inheritance. The term the ADO.NET team uses is IPOCO, which seems to stand for Interface Plain Old CLR Object. The team cites a plethora of additions with this build, including IPOCO, the ability to detach from long-running ObjectContext instances, multiple entity sets per type, support for referential integrity constraints, span support, transactions, serialization, the elimination of default constructors in code-generated classes, improvements to stored procedure support, access to the underlying store connection, directory macros in the entity connection string to support hosted scenarios, native SQL read-only views, UNICODE support in Entity SQL, query plan caching, and canonical functions in Entity SQL.

One drawback is that the release notes state this version works only with Beta 1 Visual Studio Orcas Web Express. All the other Beta 1 versions apparently don't work with it. I did test out this CTP with the June Orcas CTP, and it does work there. However, it appears the ADO.NET team, like the rest of Microsoft, isn't talking about the June Orcas CTP. Download the ADO.NET Entity Framework June 2007 CTP here.

You can also now acquire the Microsoft SDK for Open XML Formats. Open XML is the new Office format, usually indicated by an "x" suffix, such as Document1.docx. This SDK provides full fidelity support for all of office's features, while also providing an XML schema-based way of working with documents. Each document, presentation, or spreadsheet is a zip file that contains different parts in separate files. This SDK provides managed code wrappers using the new .NET 3.0 IO.Packaging API to make working with the parts included in these zip files incredibly easy. Note that Open XML is an ECMA standard and is currently in the process of ISO standardization. Download the Open XML Formats SDK from here.

If you never got your fill of playing with sandcastles as a kid, you can download the Sandcastle – June 2007 CTP. Sandcastle is a batch-line tool for creating source-code documentation based on the XML comments in the code files. This is the same tool teams at Microsoft use to create their .NET framework class library documentation. Ironically, this is a documentation tool that comes with little to no documentation about itself. The process is painful until you work out how to use the batch files. There is an online Wiki here, where you can find links to a couple of open source free GUI's that alleviate the pain of trying to work out how you configure this tool. Download Sandcastle from here.

About the Author

Bill McCarthy is an independent consultant based in Australia and is one of the foremost .NET language experts specializing in Visual Basic. He has been a Microsoft MVP for VB for the last nine years and sat in on internal development reviews with the Visual Basic team for the last five years where he helped to steer the languageā€™s future direction. These days he writes his thoughts about language direction on his blog at http://msmvps.com/bill.

comments powered by Disqus

Featured

  • Compare New GitHub Copilot Free Plan for Visual Studio/VS Code to Paid Plans

    The free plan restricts the number of completions, chat requests and access to AI models, being suitable for occasional users and small projects.

  • Diving Deep into .NET MAUI

    Ever since someone figured out that fiddling bits results in source code, developers have sought one codebase for all types of apps on all platforms, with Microsoft's latest attempt to further that effort being .NET MAUI.

  • Copilot AI Boosts Abound in New VS Code v1.96

    Microsoft improved on its new "Copilot Edit" functionality in the latest release of Visual Studio Code, v1.96, its open-source based code editor that has become the most popular in the world according to many surveys.

  • AdaBoost Regression Using C#

    Dr. James McCaffrey from Microsoft Research presents a complete end-to-end demonstration of the AdaBoost.R2 algorithm for regression problems (where the goal is to predict a single numeric value). The implementation follows the original source research paper closely, so you can use it as a guide for customization for specific scenarios.

  • Versioning and Documenting ASP.NET Core Services

    Building an API with ASP.NET Core is only half the job. If your API is going to live more than one release cycle, you're going to need to version it. If you have other people building clients for it, you're going to need to document it.

Subscribe on YouTube