Converting Existing Projects

Web parts developed for the previous version of SharePoint need to be rebuilt if they:

  • Access the SharePoint object model

  • Require enhancements that use the .NET 2.0 Framework

  • Need to be deployed as solutions rather than as DWP files

In other words: you'll probably want to rebuild existing web part projects. Because the web part project template has changed as well, it's best to start fresh and move your existing web part classes over to a new project, rather than trying to upgrade the original project.

To convert an existing WSS 2.0 web part project to use the new Visual Studio web part extensions template:

  1. Create a new web part project using Visual Studio 2005 web part extensions.

  2. Copy the class files (.cs or .vb) and any supporting files (.htm, .dwp, etc.) from the existing project to the new project's code folder.

  3. Add the files to the new project.

  4. Change the namespace for the classes to the current project's namespace.

  5. Build the project and resolve any errors or warnings.

Much of the existing code will compile successfully using the new SharePoint and ASP.NET references. However, there is some overlap between the ASP.NET and SharePoint WebPart classes, so you may get errors like the following:

'MenuItem' is an ambiguous reference between 'System.Web.UI.WebControls.MenuItem'
and 'Microsoft.SharePoint.WebPartPages.MenuItem'

You can fix those errors by fully qualifying the class, as shown here:

_mnuSave = newMicrosoft.SharePoint.WebPartPages.MenuItem("Save Settings", ...

Get Essential SharePoint 2007, 2nd Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.