Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ


Choose your language

InfoQ Homepage News Microsoft Answers “Top 10 Questions on Data”

Microsoft Answers “Top 10 Questions on Data”

This item in japanese

Microsoft has answered what they call “Top Ten Questions on Data”, explaining what has happened or it is going to happen to Oslo, ADO.NET Data Services, WCF, LINQ to SQL, T-SQL and other technologies.


According to Microsoft, the “Oslo” code name is no longer used for the group of technologies it represented, but “Microsoft is still committed to their development”. The current name is SQL Server Modeling CTP, and it will be incorporated into SQL Server because its affinity, especially Quadrant and Repository – now called SQL Server Modeling Services -, with SQL-related technologies.

Microsoft also explains the relationship between SQL Server Modeling and .NET: it makes it easier for developers to create model-driven applications.

ADO.NET Data Services and .NET RIA Services

ADO.NET Data Services has become WCF Data Services while .NET RIA Services now is WCF RIA Services. The purpose was to make WCF a “’one stop shop’ for building services and n-tier applications”, and ADO.NET Data Services and .NET RIA Services complement WCF in creating such applications.


After noticing that LINQ to SQL’s development continued in .NET 4.0, Microsoft acknowledges that:

We do, however, expect that the bulk of our overall investment will be in the Entity Framework, as this framework is built around the Entity Data Model (EDM). EDM represents a key strategic direction for Microsoft that spans many of our products, including SQL Server, .NET, and Visual Studio.

The message is clear: LINQ to SQL is not to be considered when making plans for the future.

“M” Language

Microsoft has an ambiguous position on this. Firstly, they say M will be incorporated into SQL Server as the other Oslo technologies:

As for the code name “M” modeling language, it’s important to understand that SQL Server is a much broader product than just its core engine—it contains many other services and tools. The “M” language and its associated tools will become part of that collection and thus be available to software that uses the SQL Server product (in its broadest definition).

Later, they say:

Microsoft is also presently aligning “M” with the Entity Data Model as used by the Entity Framework and Data Services. This will result in one common data model with two alternate representations: CSDL, the current XML-based language for the Entity Data Model that’s best suited for interoperability, and “M”, which is better suited for programmers.

It is not very clear which way M will go. Perhaps, M will be included in SQL Server but it will be transformed in order to be aligned with the Entity Data Model.

“M” vs. T-SQL

Since M is not a released product, Microsoft advices on using T-SQL for now, but that is going to change in the future:

Once “M” ships, the goal is to use “M” to describe a problem domain in a higher-level of abstraction. Then, “M” can be translated into T-SQL, C# or other formats, enabling further optimizations in the native target runtime.

WCF Data Services

Microsoft emphasizes some of the new WCF Data Services features already present in .NET 4.0 and VS 2010:

  • Data Binding
  • Row Count
  • Feed Customization
  • Server Driven Paging
  • Enhanced BLOB Support
  • New "Data Service Provider" Interface for Custom Provider Writers
  • Projections

ADO.NET Entity Framework

The most important features for ADO.NET Entity Framework are:

  • Foreign Keys
  • POCO Support
  • Lazy Loading on by Default in new Models
  • EntityDataSource support for Query Extenders and POCO
  • Support for Binary Keys
  • ObjectMaterialized event
  • Object Services API improvements to enable N-Tier and Self Tracking Entities
  • Improvements to the generated SQL
  • Navigation Property Management
  • Improved Database Generation
  • New Extensibility APIs
  • Generation of Complex Types from Stored Procedures
  • Greatly Improved Facet Management
  • LINQ to Entities improvements

Microsoft also explains what is Quadrant – “a tool for viewing, querying, and editing data in a SQL database with a variety of built-in viewers such as tree, list, table, and master/detail”, and what is the Open Data Protocol (OData), a topic covered by InfoQ in the past.

Rate this Article