First look: Microsoft SharePoint 2010 beta spreads the wealth

Major upgrade to Microsoft's Web site, intranet, and collaboration platform offers numerous and significant improvements for end-users, IT professionals, and developers

1 2 Page 2
Page 2 of 2

Visual Studio 2010 offers a dozen SharePoint 2010 project types in two languages, C# and Visual Basic. Empty projects are used more often than you'd think, as containers for multiple controls, workflows, and other project items. A Visual Web Part is a new kind of project that combines a Web Part class with an ASP.Net user control; the latter can be designed visually within Visual Studio 2010, which makes Web Part design much easier than writing code to instantiate child controls. The downside of a Visual Web Part is that it cannot be deployed to a sandbox.

SharePoint workflows can be sequential or state machines, and they can be one-offs or parameterized reusable workflows. Workflows can be designed using Visio or SharePoint Designer in addition to Visual Studio. In SharePoint 2010, workflows do not have to be associated with a list. They can instead be site-level workflows, with their own start pages; this is an improvement.

A Business Data Connectivity Model is a way of connecting SharePoint to a line-of-business application or an external database through a .Net class. It creates an external content type that can be used like a native SharePoint content type -- for example, in lists and searches.

Solutions and views
WSP packages, or SharePoint Solution Packages, are a handy way to deploy all of the files of your SharePoint project to your Web servers. They can, for example, be created as prototypes in SharePoint Designer and then into Visual Studio for implementation.

An extensibility API allows developers to create new SharePoint project items. I did not test this facility.

Visual Studio 2010 can view SharePoint sites in its Server Explorer as a giant tree view. This gives the developer a view of all SharePoint settings directly from the IDE. It also allows quick programming access to SharePoint artifacts. The Visual Studio Server Explorer typically pops up in the left-hand column of the window, allowing the programmer to find a server object without obscuring the code in the middle of the window.

SharePoint Designer also has a site dashboard. In keeping with the spirit of Designer, this dashboard expands to full screen and is easy to navigate and understand.

A Developer Dashboard is part of SharePoint itself; it is basically a detailed tracing and performance profiling tool. When active, the developer dashboard displays performance statistics and timings related to the code that executed to produce the page. This display can take you down to the function level and lets you quickly get an idea of everything that happens from the HTTP POST request for the page to the database queries and the rendering event handlers.

APIs and openness
Developers can use Visual Studio 2010 to enhance SharePoint 2010 through numerous APIs. Do you need to pop up a dialog? Use the pop-up dialog framework. Need a fancy widget? Build a Silverlight Web Part and bind it to SharePoint lists. Need to display related data? Use SharePoint lookup fields.

Need to bring in data from your CRM or ERP system? Create a Business Connectivity Service class and use it to populate a SharePoint list or expose it to search. Want to write strongly typed queries against SharePoint data that are tightly integrated with your code? Use LINQ to SharePoint in much the same way as you would use LINQ to SQL or LINQ to XML. Want to create new views of SharePoint data? Create your own XSLT views. Need to hook various SharePoint events as they happen? Write an Event Receiver, using a wizard to help you trap just the events you want.

Can't do what you want on the server? Use the Client Object Model from JavaScript. Need to integrate with another server? Use Web services or REST. Does the other server run PHP on Linux? Not a problem.

I have to compliment Microsoft for this new degree of openness. In the past, the company has hesitated to offer open interfaces to its server products, leaving the impression that it wanted to lock developers and customers into its platform. Now, Microsoft has allowed developers to integrate with SharePoint in whatever way is most convenient for the application at hand, using open, standard methods. Right on.

Related articles

This story, "First look: Microsoft SharePoint 2010 beta," was originally published at Follow the latest developments in Windows, applications, application development, and IT product reviews at

Copyright © 2009 IDG Communications, Inc.

1 2 Page 2
Page 2 of 2