Note: This post is updated daily or more frequently, depending on the availability of new articles.
The SSDSNwindEntitiesCS.sln sample project for my “Test-Drive SQL Server Data Services” cover article for the July 2008 issue of Visual Studio Magazine has been updated to SSDS Sprint 3, adds a couple of features, and has a few start-up bugs excised.
- The program attempts to create an authority if you haven’t added one.
- A splash screen opens during the initial query for ACE container and entity object because the process is very slow with a moderate number of objects.
- The new 'application/x-ssds+xml' MIME type replaces ‘application/xml’.
- The containerUri = response.Headers[HttpResponseHeader.Location]; instruction which now returns null has been replaced with concatenated constants as the containerUri value. This eliminates a problem when creating new containers with REST operations.
Download: You can download the SSDSNwindEntitiesCS project here (114-KB SSDSNwindEntities.zip file at Skydrive).
My Updated SQL Server Data Services (SSDS) Test Harness: Northwind REST and SOAP Uploads of July 27, 2008 has more details and screen captures.
Added: July 28, 2008
The “Stephen Forte Embraces the Impedance Mismatch” topic of my LINQ and Entity Framework Posts for 7/14/2008+ post quotes Steve’s Impedance Mismatch post of June 27, 2008, which eschewed “object-fist” in favor of “data-first” design.
I assumed that Steve’s post would brew a storm of controversy, especially since he’s a member of the Entity Framework’s new Advisory Council. However, it turned out to be a tempest in a teapot as described in my Stephen Forte’s Impedance Mismatch Post Elicits Responses from Domain-Driven Designers of July 27, 2008.
Bidirectional Serialization of LINQ to SQL Object Graphs with Damien Guard’s T4 Template in VS 2008 SP1
LINQ to SQL developer Damien Guard, who joined the DPG in May 2008, announced the availability of a customizable T4 template to generate LINQ to SQL classes from the *.dbml file in his LINQ to SQL T4 template reloaded post of July 23, 2008.
A couple of minor modifications to the L2ST4.tt template file and addition of a reference to and using directive for the System.Runtime.Serialization namespace enables full-object-graph serialization of LINQ to SQL entities. This brings parity to both VS 2008 OR/M tools in the serialization department.
Read more at Bidirectional Serialization of LINQ to SQL Object Graphs with Damien Guard’s T4 Template in VS 2008 SP1 of July 24, 2008 (updated 7/27/2008) and download the sample C# project.
Mike Taulty Posts Five ADO.NET Data Services Screencasts
Following are titles with links to the five Astoria screencasts that Mike posted on July 25, 2008:
- ADO.NET Data Services (VS08 Sp1 B1) - Querying
- ADO.NET Data Services (VS08 Sp1 B1) - Surfacing Data
- ADO.NET Data Services (VS08 Sp1 B1) - Silverlight Client
- ADO.NET Data Services (VS08 Sp1 B1) - AJAX Client
- ADO.NET Data Services (VS08 Sp1 B1) - .NET Clients
Ryan Dunn Makes IE Display SQL Server Data Services New application/x-ssds+xml MIME Type
Internet Explorer now prompts you to download SQL Server Data Services (SSDS) content that uses the new (post-Sprint 3) application/x-ssds+xml MIME type instead of application/xml.
Ryan’s Rendering POX for SSDS in Internet Explorer post of July 25, 2008 gives you the magic Registry hack to make IE display SSDS’s POX wire format.
Matthieu Mezil Shows You How to Instantiate a New EntityKey
Entity Framework uses EntityKeys to represent unique entities in its cache. EntityKeys are immutable, so Matthieu shows you how to instantiate new ones in his EntityReference change key post of July 25, 2008.
Phani Raju Demonstrates Using the AJAX 4.0 Preview’s DataView Control with ADO.NET Data Services
Phani’s ASP.NET AJAX 4.0 Master-Details View with the DataView and ASP.NET AJAX 4.0 Master-Details View with the DataView , Part 2 posts of July 24 and 25, 2008 use the ASP.NET AJAX 4.0 CodePlex Preview 1’s templating engine and DataView control to build master-details pages.
Phani uses Astoria and its AJAX Client Library for ADO.NET Data Services from CodePlex as the data source.
Jim Wooley: Quickly create an IEnumerable<T> from a DataReader
Jim’s Filling an object from a DataReader with LINQ using DataContext.Translate post of July 25, 2008 shows you how to use the DataContext.Translate<T>() method to create an entity set from a database table without mapping for the DataContext.GetTable() method.
Eric White Analyzes Responses to his “Are Developers Using LINQ?” Post
Eric received many detailed responses to his Are Developers Using LINQ? post of July 23, 2008. In his Are Developers Using LINQ? (Part 2) post of July 25, 2008, he describes these four common LINQ usage scenarios:
- Using LINQ to Objects and LINQ to XML … .
- Using query expressions … to access objects and XML.
- Using LINQ to SQL or LINQ to Entities to access a database.
- Using LINQ implemented using an IQueryable provider to something other than a SQL database.
and noted that there were only a few negative responses.
Keith J. Farmer points out in a comment to the first post that folks still call LINQ “link,” consider LINQ to SQL to be the only implementation, and believe SQL Server is the only LINQ-enabled data provider.
Ruurd Boeke Joins Microsoft’s Silverlight (not Entity Framework) Team
Ruurd notes in his I’m joining Microsoft!! post of July 25, 2008 that:
I was torn between working on EF (which, I’ve been very involved with lately) and on Silverlight. In the end, Silverlight won, because I strongly believe it to be the strongest contender in the client space.
I’m disappointed that Ruurd didn’t choose to join the Entity Framework team. His six-part Introducing Entity Framework Contrib: Easy IPoco implementation V 0.1 series used Postsharp to “[a]utomatically implement the IPoco interfaces. The project is aimed at helping you build your domain layer in a more persistence ignorant way than is possible at this moment.”
Note: Ruurd’s eight-part Workflow as controller: Introducing <M,V,C> where M: ViewModel, V : WPF, C : WF describes an inventive framework that uses WF in an unconventional role, although he won’t call his tutorial a framework.
Jeff Currier Defends SQL Server Data Services’ Missing PUT/POST Response Bodies
Mike Amundsen’s REST PUT/POST Responses contain ETag, but not body - Oops! thread of July 24, 2008 in the SQL Server Data Services (SSDS) - Getting Started says:
I note that the PUT results in a return that includes an ETag (yay!), but that there is no body returned for this PUT. I think this is a problem. ETags act as a version hash for the document body. Yet this Response has no body!
Jeff’s What happened to SSDS PUT/POST responses? post of July 25 replies:
Prior to this rollout the only mechanism that we had to communicate version information to you was via the entity body of the response (specifically the version element in the body). However, now that we have true ETag support we now can simply return this value back to caller via the ETag header per the Http spec.
Jeff attributes the reason for the change to future ingress and egress charges; returning the body would increase downloaded bytes.
Beth Massi Posts Four WPF Forms Over Data Video Segments to the Code Gallery
Her WPF Forms over Data: 2 More Videos! post of July 24, 2008 announces #3 and #4 in the following series about data binding in WPF:
- How Do I: Create a Simple Data Entry Form in WPF?
- How Do I: Display Data in a List in WPF?
- How Do I: Create Lookup Combobox in WPF?
- How Do I: Hook Up and Display Validation in WPF?
Click the Watch Video link to substitute MediaPlayer for the miniature Silverlight window. VB and C# sample code is downloadable.
Charlie Calvert Continues with Aggregate Operators in his Revived LINQ Farm Series
Charlie’s LINQ Farm: More on the LINQ Aggregate Operators discusses the following LINQ aggregate operators and their overloads:
- Count and LongCount
- Min and Max
Jeremy D. Miller and Ward Bell Discuss Object/Relational Modeling and the Entity Framework in a Two-Part Podcast
Scott Hanselman Does a Video Deep Dive on LINQ and the Entity Framework
The actual title of Scott’s Jumpstart Data Driven Web Applications with ASP.NET 3.5 (Part 1 of 2) presentation for Tech*Ed 2008 Developer is “WUX101: Jumpstart Data-Driven Web Applications with ASP.NET 3.5 Dynamic Data Controls (Part 1 of 2).”
Note: ASP.NET 3.5 Dynamic Data Controls became ASP.NET Dynamic Data after Tech*Ed.
The deck for the presentation reads:
Explore the new features in ASP.NET 3.5 that make buliding data driven Web applications a breeze. In this first of a two-part series, learn how to use LINQ to take the pain out of interacting with your relational data and how support for LINQ and its constructs are built into the paradigms you are familiar with in ASP.NET and Microsoft Visual Studio 2008.
Hopefully the TechEd Online News folks will post Part 2 shortly.