Referencing other assemblies documentation

Feb 28, 2011 at 2:33 PM

Good morning,

I'd like to create two different CHM files for the namespaces coming from two separate  assemblies. The second assembly depends over the first, like:

A.dll -> namespaces A1, A2, A3

B.dll -> namespaces B1, B2, B3

in the namespace B2, the function f takes as parameter an object having type defined in the A1 assembly and returns an object whose type is defined in A2. All the methods and classes are documented.

When generating documentation for the B assembly, the types belonging to the A assembly documentation are not referenced (the types in the A assembly are not found, so they aren't hyper-linked to the A assembly documentation).

I've tried adding a reference to the A assembly in the shfbproj file, but the links are still not resolved.

Could you please point me to some documentation about this subject (cross references in documentation projects)?

Thanks in advance,


Feb 28, 2011 at 11:28 PM

Linking between CHM files is problematic and is not supported directly by Sandcastle or SHFB.  This topic has come up before and I believe there are tools that you can use on the resulting help file to get linking between them to work but I can't find the topics right now, so I could be wrong.  The Resolve Reference Links plug-in can help for Help 2 and Help Viewer files since those output types support the alternate link types for that sort of thing (i.e Index in Help 2).  For CHM files, the best it can do is convert them to None links so that they are rendered as regular text without trying to resolve them.  Unless there's a reason you need two help files, the easiest approach is just merge them into one project that produces one help file.