In-Depth

VSLive! 2007: Microsoft Moves DBMS into the VS Developer Mainstream

Orcas will include exciting new tools and functionality for database management within VB and C# while maintaining continuity and connectivity with legacy DBMS.

Watch the video of the keynote! (Running time: 1 hour 4 minutes)

The second morning keynote at VSLive! San Francisco 2007 was delivered by Britt Johnston, director for data programmability within Microsoft's Database and Storage Platforms Group. Titled "The Last and Next Decade in Data Management with the Microsoft Data Platform," the presentation gave the audience a sneak preview of data management capabilities provided by the next version of Visual Studio (VS), code named "Orcas." Some capabilities scheduled for even later versions were also demonstrated.

Johnston's prime focus was his group's effort to morph database management programming from an arcane specialty completed "over there somewhere" into tasks that can be completed with familiar VS tools.

Johnston outlined a vision of conceptual data programming that spanned product lines and the realms of programmers, system administrators, and report authors. Johnston and his team are working to make it easier to map business concepts to data, make services consistent across different information sources, make storage models consistent, and make it easier to extend legacy investments. These improvements are designed to help you create artifacts that can be easily shared.

He described Microsoft's vision for accomplishing this as moving from "database" to "data platform" based on four pillars: entities, SQL Server, rich services, and VS. Entities take the focus from tables and rows to business concepts. SQL Server's evolution from CE to EE encompasses a simple programming model from device to cloud. Rich services enable searching, analyzing, integrating, reporting, and synchronizing of all data. Orcas will let you maintain data project artifacts within VS Diagram.

Johnston drilled down to specifics. Some of his program managers demonstrated key new features of Orcas. These demonstrations were prepared in Redmond using video capture technology. Several members of the audience commented on the impressive clarity of these visuals.

The first video demonstrated how you can use Orcas' XML Editor in VS to open an XML file and generate a schema from it. The product manager leading the demo observed that the noise ratio in XML files is high, with many elements that don't even contain data. He showed how the Editor uses Intellisense to automate much of the work required to filter this noise. The Editor goes to the schema associated with a file and places the required elements in your buffer. You need only to provide some of the data and commit when done, without typing any extra items. The project manager also showed how the XML Editor provides you with instantaneous validation of the XML files.

Johnston asked the audience how many have tried XML Editor. A few attendees raised their hands. He then encouraged the audience to download the express version from MSDN, observing that "customers think they have to buy additional products, but they really don't."

Next up: a demonstration of another Orcas feature—the XSLT Debugger. The product manager demonstrating this feature showed how you can set break points in the data files, as opposed to in the XSLT file, and how the debugger shows from where the data is coming, what the transformation is doing, and the final result. The product manager highlighted not only standalone debugging but also how you can debug XSLT files from your project just as with a VB or C# program.

The third feature demonstrated will not be available until Rosario ships—or perhaps even later. It's an XSD designer. A simple search operation was displayed, highlighting features such as setting tic marks in the scrollbar to show results on an entire tree. A more complex operation was also shown that involved looking for the root elements of a schema, where you have an option to view in the designer the most likely elements.

The final demonstration featured an entity data models (EDM) Wizard that generates classes from the conceptual model, but the portion of this demo that produced spontaneous audience applause was an EDM designer functionality that will not be available in the Orcas beta release. This hotly anticipated functionality is a database designer and an entity modeler. These features let you map a database to a model, keeping the model in sync. The project manager leading this demonstration created a user entity type from an user's table with drag-and-drop functionality, where glyphs showed mapping of entity type to table. Sophisticated graphical representations of entities and relationships enabled the user to work at the level of the business relationships rather than programming abstractions. These visuals demonstrated with database designer and entity modeler what has been seen before in drawing programs—but this was the first time the audience had seen them working within a real development environment.

After the demonstrations, Johnston discussed framework innovation and ADO.NET. New features included the first implementation of EDM, a query language (Entity SQL), a new provider (Entity Client), a new object-rational mapping (ORM) stack over Entity Client, and LINQ support over entities. Taken together, these features provide a bridge between developers' ADO.NET expertise and the new data programming world.

The ADO.NET Entity Framework will let you work with entity data at the conceptual level and separate applications from database schemas. LINQ to Entities lets you query data in terms of your programming language, and you'll be able to program databases using .NET objects, and create, read, update, and delete directly against the objects. Its overall goal is to minimize the time you spend programming in objects.

Johnston added that the provider model puts the expertise in the data source, enabling it to pick the right dialect instead of forcing developers to use the least denominator syntax across systems.

He promised that Microsoft will provide developers with an integrated development experience, with reusable artifacts that let you repurpose your investment in code across the report writing and security space. He announced that Microsoft is raising the level of abstraction by creating a "services ecosystem." Johnston ended on a promise that he'd keep the faith with traditional DBMS developers, including a continued commitment to ODBC, Java, PHP, and others.

About the Author

Lee The's first computer was a state-of-the-art unit with 48K RAM and a 1MHz processor. He has been writing and editing computer magazine articles since then, in between scuba diving trips. He's based in the San Francisco Bay Area.

comments powered by Disqus

Featured

  • Compare New GitHub Copilot Free Plan for Visual Studio/VS Code to Paid Plans

    The free plan restricts the number of completions, chat requests and access to AI models, being suitable for occasional users and small projects.

  • Diving Deep into .NET MAUI

    Ever since someone figured out that fiddling bits results in source code, developers have sought one codebase for all types of apps on all platforms, with Microsoft's latest attempt to further that effort being .NET MAUI.

  • Copilot AI Boosts Abound in New VS Code v1.96

    Microsoft improved on its new "Copilot Edit" functionality in the latest release of Visual Studio Code, v1.96, its open-source based code editor that has become the most popular in the world according to many surveys.

  • AdaBoost Regression Using C#

    Dr. James McCaffrey from Microsoft Research presents a complete end-to-end demonstration of the AdaBoost.R2 algorithm for regression problems (where the goal is to predict a single numeric value). The implementation follows the original source research paper closely, so you can use it as a guide for customization for specific scenarios.

  • Versioning and Documenting ASP.NET Core Services

    Building an API with ASP.NET Core is only half the job. If your API is going to live more than one release cycle, you're going to need to version it. If you have other people building clients for it, you're going to need to document it.

Subscribe on YouTube