Links to library topics

Topics: General Questions
Dec 12, 2007 at 9:47 AM
If I, for example, include in an XML Comment a reference to, say, System.String a link is created to a page on the MS site.

Is there a spell I can cast that will cause this link to point to my internal MSDN collection instead?
Coordinator
Dec 12, 2007 at 11:22 AM
Hi Stuart,

I haven't tried this myself (I don't have MSDN installed locally) but I've seen in the forums people mention that using the index reference resolution type instead of msdn may do the trick. If you try it please let me know.

You can change the value in the DocProject Properties window by expanding the Help 2.x build component stack property and the Reference Link Types sub property. Then set the .NET Framework property to Index.

Alternatively, you can edit the Help\Presentation\Style\Configuration\sandcastle.help2x.config file manually:

<!-- resolve reference links -->
<component type="Microsoft.Ddue.Tools.ResolveReferenceLinksComponent2" assembly="%DXROOT%\ProductionTools\BuildComponents.dll">
  <targets base="%DXROOT%\Data\Reflection" recurse="true" files="*.xml" type="msdn" />
  <targets files=".\reflection.xml" type="index" />
</component>
Change type="msdn" to type="index", save the file and try building again.

Note that if you click the ellipses button (...) on the Reference Link Types property in the DocProject Properties window in Visual Studio Standard +, the appropriate config file will be opened in the XML editor and the component's first line will be selected automatically, just in case you're having trouble locating it.

- Dave
Dec 12, 2007 at 12:57 PM
You, my son, are on a roll!

Nice one.
Coordinator
Dec 12, 2007 at 6:14 PM
I assume that the index setting worked for you then?

This information will be handy to others I'm sure - I'll have to add it in one of the How To articles.

Thanks,
Dave
Dec 13, 2007 at 8:46 AM

davedev wrote:
I assume that the index setting worked for you then?

Indeed.