This project has moved and is read-only. For the latest updates, please go here.

Can't link to namespace items from contextual content

Jul 11, 2008 at 7:12 PM
I'm having trouble linking to namespace items from contextual content.  I have reviewed the help file "Linking to Namespace Content", linked to from the FAQ.  It says that I should be able to link like this.

<see cref="N:SandcastleBuilder.Utils">SandcastleBuilder.Utils Namespace</see> topic.

This is not working.  I've copied my cref directly from the reflexions.xml file, so I know I'm spelling it correctly.  The help file says that "Messages are written to the log file indicating how the link was resolved.", but I'm not seeing anything in the log file about my link. 

I am running version of Sandcastle Help File Builder.  Anyone have any ideas of things I might try?
Jul 11, 2008 at 8:16 PM
Edited Jul 11, 2008 at 8:19 PM
Are you referring to "addtional content" (.html/.topic) files or "conceptual content" (MAML files)?  If MAML, <see> tags are not used.  Use the <link> tag instead.  You can use the Code Entity Search pane to find the item and then drag and drop it in the topic if you aren't sure of the syntax.  There's also a MAML guide available at the Sandcastle Styles project site that can give you info on how to create MAML topics.  Note that for conceptual content, almost all of the topics in the Additional Content section are not relevant as they refer to HTML content.

Jul 11, 2008 at 10:52 PM
I am building a MAML file.  Thanks for the MAML guide link.  That was very helpful.

I'm still having problems with my links, though.  When I link from one MAML file to another MAML file, it works fine.

<link xlink:href="960b772c-5aaf-490e-b2ec-c42e3e6bd8ff">Todo Comments</link>

However, if I link to a namespace file, the GUID doesn't resolve.  My link looks like this :

<link xlink:href="b7434269-9a2b-8878-098a-59596d62289e">FF.WorkflowEngine.Workflow</link>

The link doesn't work, and I get the following error in the log.

Warn: ResolveConceptualLinksComponent: Unknown conceptual link target 'b7434269-9a2b-8878-098a-59596d62289e'.

I got that GUID by right clicking th WorkflowEngine.Workflow help page, clicking properties, and pulling the GUID out of the page name.  It also matches the GUID for that topic in the reflexions.xml file, so I'm certain that the GUID is correct.
Jul 12, 2008 at 12:11 AM
>> However, if I link to a namespace file, the GUID doesn't resolve.  My link looks like this :
It is simple, use the <codeEntityReference> tag not the <link> tag.

For namespace say, System.IO, use 

For class or structure or interface, say System.IO.FileStream, use 

For methods, say FileStream.Flush, use 


Best regards,
Jul 12, 2008 at 3:05 AM
Sorry, I specified the wrong tag name.  It is <codeEntityReference> as Paul noted.  As I mentioned, if you have trouble figuring out the name, use the Code Entity Search pane.  You can open it off of the Window menu or by hitting F3.  From there you can search by partial name or regular expression and then drag and drop a result from the list box into the topic to create the link.

Jul 14, 2008 at 4:14 PM
The "CodeEntityReference" tag works great.  Thanks, guys.