link to R:Project (root namespace container)

Topics: Developer Forum
Jul 15, 2011 at 11:01 PM

I'm sure this is a very simple thing to accomplish; but I have yet seen it done or been able to accomplish it myself.  I'd like to specify a link from my Welcome conceptual topic to the root namespace container; not indiviual entries in the API section, but the actual root.

Any ideas?

Thanks in advance,

Steve

Jul 18, 2011 at 6:44 PM
I found this buried deep in another discussion and it works! I'm not sure if the <linkUri> will be the same for other projects, however I was able to get mine by R-Clking on the entry in the TOC and copying the Current URL.
<externalLink>
	<linkText>Namespace Root Page</linkText>
	<linkUri>./html/459D4F4D.htm</linkUri>
	<linkTarget>_self</linkTarget>
</externalLink>

Coordinator
Jul 18, 2011 at 8:45 PM

The ID will change if you use a different NamingMethod project property value otherwise it will remain constant.  The one above looks like its using the HashedMemberName option.  Using Guid or MemberName would result in a different value.  The Guid option will remain constant too since it's really an MD5 hash of the ID in GUID format.

Eric

 

Dec 16, 2011 at 12:12 AM

I'm trying to do this same thing but without success in 1.9.3.0. I've tried NamingMethod set to GUID and MemberName, R:Project and the resulting GUID, in the current folder and in ./html/, with internal links and external links.

What's the magic?

Dec 16, 2011 at 5:38 PM

My previous post works for me.  I'm not sure you saw the end of my message..

I was able to get mine by R-Clking on the entry in the TOC and copying the Current URL.

 

Dec 16, 2011 at 9:40 PM

Yes, I tried that but it didn't work for me. I used:

      <externalLink>
          <linkText>.NET API Reference</linkText>
          <linkAlternateText>.NET API Reference</linkAlternateText>
          <linkUri>R%3aProject</linkUri>
      </externalLink>
      <externalLink>
          <linkText>.NET API Reference</linkText>
          <linkAlternateText>.NET API Reference</linkAlternateText>
          <linkUri>R:Project</linkUri>
      </externalLink>           
      <externalLink>
          <linkText>.NET API Reference</linkText>
          <linkAlternateText>.NET API Reference</linkAlternateText>
          <linkUri>d4648875-d41a-783b-d5f4-638df39ee413</linkUri>
      </externalLink>
      <externalLink>
          <linkText>.NET API Reference</linkText>
          <linkAlternateText>.NET API Reference</linkAlternateText>
          <linkUri>d4648875-d41a-783b-d5f4-638df39ee413.htm</linkUri>
      </externalLink>
      <externalLink>
          <linkText>.NET API Reference</linkText>
          <linkAlternateText>.NET API Reference</linkAlternateText>
          <linkUri>./html/d4648875-d41a-783b-d5f4-638df39ee413.htm</linkUri>
      </externalLink>       
      <link xlink:href="d4648875-d41a-783b-d5f4-638df39ee413">.NET API Reference</link>
      <link xlink:href="R:Project">.NET API Reference</link> 
None of them result in a link.
Dec 16, 2011 at 11:18 PM

I’m not sure this will help, but maybe…

  1. Compile your help to a MS Help Viewer (.mshc) File
  2. Navigate to the root page of your API
  3. From the context menu, select View Source
  4. Select All and copy into an Html page in VS
  5. Search for <meta name="file" content=
  6. For me I find <meta name="file" content="459D4F4D"></meta>

And then I create my link…

<externalLink>
      <linkText>My API</linkText>
      <linkUri>./html/459D4F4D.htm</linkUri>
      <linkTarget>_self</linkTarget>
</externalLink>

I don’t remember having to go through all this when I first discovered the <linkUri>, but it’s the only way I could find it this time.

Good luck, and let me know if it worked,
Steve