If you don't handle them, we shut your application down. That dramatically increases the reliability of the system.

You can query pretty much anything. LINQ works with any collection you have in the .Net Framework today. It's a single programming model for data where the things you know in this domain just magically apply for another domain.

My particular interest for the past couple of years has been to really think deeply about the big impedance mismatch we have between programming languages, C# in particular, and the database world, like SQL?or, for that matter, the XML world, like XQuery and those languages that exist.

We know that our underlying technology was not rich enough, ... It was not a particularly friendly world to program in.

I absolutely think it will, because it makes .Net a more appealing proposition.

The dream is to have a single programming model.

Not only does this scenario require familiarity with several programming languages, but it also requires a mastery of the application programming interfaces that bridge the different domains, such as ADO.NET or Open DataBase Connectivity (ODBC).

Your choice of programming model also is your choice of programming model, so to speak.

The .NET framework was built really to support XML Web services.