.NET 2.0 Documentation Generation with Sandcastle
I’ve been aware of Microsoft’s documentation generation system called Sandcastle for a while now but only recently have I had a chance to use it.
With NDoc all but dead (see NDoc 2.0 Alpha) Sandcastle is now one of very few free alternatives that I could find to generate documentation from my coding comments. However, it did take a bit of searching and playing around to get things working.
You need the following core applications:
You may also need:
Once you’ve installed all three of these things you will need to ensure that each of your projects is creating XML Documents when then build. This can be done by viewing the properties of each of your projects in Visual Studio 2005 (right-click on the project and select “Properties”, select “Build” and ensure the “XML Documentation file” checkbox is checked.

Once you’ve ensured this checkbox is checked you’ll need to build your solution so the XML documents are generated.
Now open the Sandcastle Help File Builder application and you should be able to select Project -> New Project from Visual Studio Project…
Select and open up your Visual Studio solution and you should see the “Assemblies to Document” area filled with the project assemblies that belong to your solution. Now you need to populate the Build -> Dependencies section with all the dependencies of your projects. You can add full folders, single files or GAC dependencies using the buttons at the bottom of the “Documentation Assembly Dependencies” dialog.

Finally update the Paths -> HtmlHelp1xCompilerPath, Paths -> SandcastlePath and Paths -> OutputPath to the installation of the HTML Help Workshop location, Sandcastle location and your documentation output folder location respectively.
Click the build button or select Documentation -> Build Project and your documentation should eventually be build in your selected OutputPath.
Related posts:
About Phil Leggetter
My name is Phil Leggetter and I'm a Developer Evangelist at Pusher, a Real-Time Web Software and Technology Evangelist and Consultant, software engineer, team leader, line manager, micropreneur, product developer, Twitter user and a keen user of social media. For more information see the About Phil Leggetter page.
Social
Tags
.NET Ajax API APIs ASP.NET MVC Bing Blogging C# cloud comet Community DataSift Facebook Google Hardware http streaming ian sanders ideas Internet JavaScript Kwwika Life Mapping Microsoft Mobile Phones pubsubhubbub pusher real-time real-time data real-time push real-time web realtime RSS RTRIA Scotland silverlight Social Media Software Development Superfeedr truly real-time truly real-time web Twitter web 2.0 websockets Whinge









