My first requirements when developing against an API is an advanced API description. Documents generated by NDoc where so far more then sufficient for me. But with the introduction of .NET 2.0, NDoc seems to have several problems to integrate Generics for example in their architecture. Microsoft did accelarate on this and decided to provide their own MSDN library generator to the world. The only problem was that it was an internal tool… SO after a couple of months, Microsoft did release: Sandcastle. So far, the main source for information about Sandcastle is this blog. Interesting thing is that Microsoft takes the usage of Sandcastle very serious. They know Sandcastle is a part of the buildprocess for other comapnies, so this month thÃ©y have released a CTP Ã¡nd a CTP Technical Refresh.
The guys up in Copenhagen have already noticed their documentation team:
I hope our Op-team is using Sandcastle – I made them aware of it a couple of months ago.
But till they make it available at SDN5, I’l provide you tips and trics to generate it by yourself. So fooks, get your cookbooks and get ready! It’s time to bake some sandcakes!
First of all download the latest Sandcastle CTP and download the following tool to make it more easier for yourself: http://www.codeproject.com/useritems/SandcastleBuilder.asp
Then, create a temp folder on your desktop. For example: ‘Workfolder Sandcastle’.
Create a folder inside of it ‘sources’. Copy the full contents of the bin-folder of your Sitecore distribution to this ‘sources’ folder.
Then open the SandcastleBuilder, create a new project and attach the Sitecore.Kernel.dll for documenting.
Dependencies should be set to the sources-folder and to the full .NET 2.0 folder(most of the time: %windows%\Microsoft.NET\Framework\v2.0.50727).
Just fill in the form, set or remove some flag(for quick generation, disable external url resolving).
Then save the project-file of the Builder in your ‘Workfolder Sandcastle’.
Ctrl+Shirt+B and let’s drink some coffee… :). For futher assistence, results and panic situation, contact me :).
For thos guys who have problems opening the .chm-file, read this link.