Wednesday, November 19, 2008

SharePoint Development - The Essential Tool Set


Please make sure that you install the SharePoint Extensions for your Visual Studio environment.
Extensions for Visual Studio 2005
Extensions for Visual Studio 2008

For a reference to the SharePoint Class Library: MSDN on Microsoft.SharePoint

People who know how to develop in .NET (particularly C# and ASP.NET) already know the foundations for developing for SharePoint 2007. All you need to know is the classes that SharePoint uses, how to access data on SharePoint through your code using GUIDs, and if you are also the SharePoint administrator, how to configure SharePoint to use the custom code by referencing the assembly information.

So how the @#&$% does the developer get the GUIDs and the assembly information?

Before beginning your development project, check out the CodePlex site. CodePlex is Microsoft's open source community. There are numerous tools on this site available for your use, and someone may have already written a tool or web part that you may have to develop.

There are a number of tools that I use to assist me with my SharePoint development. All of these tools that I use are not only free to use, but the majority of the tools are endorsed by Microsoft (the manufacturers of SharePoint and .NET).

  • Stramit Caml Viewer
    Site for Caml Viewer
    Written by Renauld Comte, this robust tool not only gives you information about list and view GUIDs, but it also generates CAML queries for you. So if your application is using CAML queries to get the information, this tool saves you a boatload of time because it not only generates the XML for the CAML query, it also generates the StringBuilder logic for creating the XML for the CAML query!

  • A Simple GUID Picker
    Site for the GUI Picker
    Written by Ronalus, this tool allows you to get the GUIDs for the lists and views on a SharePoint site. This tool is simple yet useful. I use this tool when I'm doing reporting using SharePoint data and SQL Reporting Services since you need to know the list and view GUIDs to connect to the SharePoint "data source".

  • Reflector
    Site for Reflector tool
    Originally written by Lutz Roeder and maintained by Red Gate, this tool is essential for development. This tool returns the assembly information for a class library (dll). All you have to do is drag and drop the dll into the tool, and it will return the information for you, including the assembly information (which is needed for configuring the SharePoint server to use your custom web part or program) and the classes that are part of the library.

    If you have Windows Media player, you can see it in action in this video.

  • Warmup Server
    Download Warmup Server
    Ideally, you want to create a virtual environment in order to do your SharePoint development. If you develop in a virtual environment, then this is the tool for you. This tool allows you to create a MOSS 2007 VPC (Virtual PC) image that you can use. Here is the tutorial on using this tool. I haven't tried it since in my environment, we actually have physical machines that we work from, although I am leaning toward setting up virtual environments for my development.

  • SharePoint Spy
    Site for SharePoint Spy
    Written by Echo Technologies, this free tool will allow you to look at the internal data on a SharePoint site and compare the effects of making a change without changing the actual data. This tool is really helpful if you are writing a program that is manipulating data on a SharePoint list, and you don't want to have to change the data each time. You can also use this tool to compare settings between sites, views and lists to help troubleshoot configuration problems.

No comments: