After about a day and a half of searching (and reapplying VS2008 SP1), this blog article finally cleared things up:
Astoria V.Next Ships for .NET 3.5 SP1 -> Versioning Issue
Turns out everything was fine with my installation, but I had skipped over the fact that the signature of the InitilizeService() method had changed ever so subtly. As Stephen Forte indicates in his blog:
1: //change the IDataServiceConfiguration to DataServiceConfiguration
2: public static void InitializeService(DataServiceConfiguration config)
3: {
4: config.SetEntitySetAccessRule("*", EntitySetRights.All);
5: //take advantage of the "2.0" features
6: config.DataServiceBehavior.MaxProtocolVersion =
7: System.Data.Services.Common.DataServiceProtocolVersion.V2;
8: }
The first thing that you need to change is on line 2, change the interface IDataServiceConfiguration to be just DataServiceConfiguration (I am sure that there is a better way to do this, I have not figured it out yet.). Next, set the MaxProtocolVersion property of DataServiceBehavior to V2. After that you can take advantage of all the new features!
Emphasis mine. It's amazing the difference a simple "I" makes. To answer Stephen's concern, this is also backed up by MSDN, but they currently don't point out the difference in referencing the interface vs the implementation object:
Configuring the Data Service (ADO.NET Data Services)
Here's the code in VB:
'change the IDataServiceConfiguration to DataServiceConfiguration
Public Shared Sub InitializeService(ByVal config As DataServiceConfiguration)
config.SetEntitySetAccessRule("*", EntitySetRights.All)
'take advantage of the "2.0" features
config.DataServiceBehavior.MaxProtocolVersion = System.Data.Services.Common.DataServiceProtocolVersion.V2
End Sub
Compiled, tested, and passed. I have just taken my first step into a larger world...