Microsoft posted on January 10, 2006 at about 8:30 p.m. PST the long-awaited Microsoft Pre-release Software Visual Studio Code Name "Orcas" - January 2007 Community Technology Preview (CTP), formerly known as the Orcas December 2006 CTP. The download is available as an extractable executable, consisting of VSDec2006CTP.part1.exe and six VSDec2006CTP.part#.rar files (4.21 GB). Alternatively, you can create a Virtual Server 2005 or Virtual PC 2004 image (.vhd file) by combining the self-extracting base image (VSCTPBase.exe, 1.12-GB) with VSDec2006CTP.part01.exe and seven VSDec2006CTP.part0#.rar files (4.91 GB). Notice the 0 prefix that distinguishes the executable from the virtual server files. The Virtual Server OS is Windows Server 2003 Enterprise Editon SP1, not Windows server 2003 R2. The virtual machine files extract to Base01.vhd (2.86 GB), VSDec2006CTP.vhd (11.45 GB), and VSDec2006CTP.vhc (13 kB). Starting the virtual machine adds Base01.vmc (11 kB) and VSDec2006CTP.vsv saved-state file (1.51 GB). Thus you need about 22 GB of free disk space for starters.
Orcas January CTP Shortfalls
The January CTP's LINQ components (especially LINQ to SQL)aren't fully cooked, as evidenced by the following comment from a January 12, 2006 post to Charlie Calvert's C# Community Blog:
The January 2007 CTP Release Notes state:
This build of Orcas has good support for LINQ to Objects and only shaky support for LINQ to SQL. There has, however, been good support for LINQ To SQL in the internal builds I've seen in the last few days. These internal builds all target the February CTP.
- ADO.NET Entities in this current drop do not support LINQ—The private CTP of ADO.NET (ADO.NET August CTP) does offer a preview of LINQ integration but that functionality does not work with the Orcas January 2007 CTP.
- No ADO.NET tools support for the Orcas January 2007 CTP—There is a publicly available ADO.NET Tools CTP. Please note these tools work with the ADO.NET August CTP and not the Orcas January 2007 CTP.
- You can’t import Whidbey SDM Designer files in Orcas—No workaround is available for this issue.
Note: Click the images for full size versions or click here for a Web page with a set of larger images.
To set up the virtual machine on Virtual Server 2005 R2, substitute these steps after extracting the :
1. Click the Virtual Machine group's Add button to open the Add Virtual Machine page.
2. Type the d:\full path\VSDec2006CTP.vmc file in the Fully Qualified Path to File text box:3. Click Add to create the new virtual machine from VSDec2006CTP.vmc.
4. Click the Virtual Disk group's Inspect button to open the Inspect Virtual Hard Disk page, and select d:\full path\VSDec2006CTP.vmc from the the Known Virtual Hard Disks list.
5. Click Inspect to open the "VSDec2006CTP.vhd" Virtual Hard Disk Properties page, which displays the error message in the Parent Virtual Hard Disk(s) text box:6. Click the red error message to open the Update Virtual Hard Disk Parent page, and select the d:\full path\Base01.vhd item in the Parent Virtual Hard Disk Path text box: 7. Click Update Parent Path to return to the "VSDec2006CTP.vhd" Virtual Hard Disk Properties page, which now shows d:\full path\Base01.vhd in the Parent Virtual Hard Disk(s) Path text box. 8. Click Master Status. If VSDec2006CTP doesn't appear in the Remote View list, click Add, select d:\full path\VSDec2006CTP from the list, and click Add. 9. In the Master Status page, hover the mouse over VSDec2006CTP and select Configure to open the configureation page. Set the Memory, CD/DVD and Network Adapters values. 10. Hover the mouse over VSDec2006CTP and select Turn On. After a minute or two, Windows Server 2003's logon dialog appears. 11. 13.306 isn't the correct set of Virtual Machine Additions for this relase, so click Virtual Machine Additions to open the page of the same name, mark the Install Virtual Machine Additions check box and click OK. 12. Click the thumbnail to turn on remote operation. Type your Administrator credentials to open the "VSDec2006CTP" Remote Control page. 13. Log on with Right Alt + Del, accept Administrator as the user name and type P2ssw0rd as the password.
New LINQ Resources While you're waiting for the Orcas February 2007 CTP, take the time to explore these new LINQ-related resources:
Microsoft's Wes Dyer has produced an eight-part treatise on LINQ queries:
- Comprehending Comprehensions—What are queries? How are queries treated by the compiler?
- Transparent Identifiers—How are local variables introduced by queries?
- Thus Quoth the Humble Programmer—What are expression trees? What are lambdas translated into?
- Reading and Writing Queries—What mental models are useful in reading and writing query expressions? What are the scoping rules for queries?
- A Model for Query Interpretation—How can we think about query evaluation? Is it possible to think of queries in terms of the queries and not the rewrites? What is the conceptual model for Linq to Objects queries?
- How Linq to Objects Queries Work—What causes Linq to Objects queries to be lazily evaluated? How are the results computed? What underlies the conceptual model for Linq to Objects? Why do queries exhibit their debugging behavior?
- Having Trouble with Queries—What constitutes good error messages? How are effective error messages for queries generated in the face of type inference and significant syntactic sugar?
- Another Model for Query Interpretation—Are there other models for query interpretation besides an imperative one? Why are some queries declarative and others not?
Eric Lipper discusses lambdas in the following two recent posts:
Updated: January 15, 2007