2009-06-17 21 views
5

Sandcastleと私のプロジェクトのウェブサイトのドキュメントを生成しました。このウェブサイトはフレームを使用しているので、サイトをクリックしてもブラウザのURLは変わりません。サンドキャッスルのドキュメントのWebサイトにあるMSDNのようなリンクを作成する方法は?

Sandcastleで生成されたWebサイトのドキュメントを参照すると、ブラウザでURLを変更したいと考えています。どうして?開発環境の他の部分のドキュメントの具体的なサブページにリンクしたいからです。

さらにこのリンクを永久に保持したいと思います。したがって、私のプロジェクトの新しいバージョンからドキュメンテーションをもう一度生成すると、リンクは変更されないので、すべてのリンクを新しいものに変更する必要はありません。

これは可能ですか、これを実現する方法はありますか? ?$ DOCUMENTATION_ROOTの$/Index.aspxトピック= HTML/$ TOPIC_ID $ .htmの

例えば:あなたが同様の要求を使用して文書の特定のサブページへの正しいリンクを作成するために

答えて

4

あなたがSplitScreen.jsの先頭に以下のコードを追加した場合、ブラウザは、TOCフレームを「注入」とあなたは(ヴィタリーShibaevが示されたトリックを使用して)に直接リンクされたコンテンツに焦点を当てます。

if (window==top) { 
    window.location = "/?topic=" + (window.location.pathname.substring(1)); 
} 

このコードは、ドキュメントは、Webサイトのルートに配置され、それに動作します - あなたは「?/トピック」に拡張し、からサブフォルダの一部を除去する必要があるサブフォルダにそれを持っている場合パス名部分。

この変更により、「直接リンク」を使用することができます。また、Googleを介してあなたを見つけたユーザーは、より良い体験を得ることができます(検索したコンテンツと目次のバーを取得する)。

0

Vitaliyおよびmawtexは、質問の「ドキュメントのサブページへのリンク方法」の部分を解決しました。

作成されたhtmlファイル名は、デフォルトでトピック名のハッシュに基づいているため、質問の一部が自動的に解決されます。私。ドキュメント化しているコードの部分を変更しない場合は、同じファイル名が使用されます。

htmlファイル名の生成方法を変更できますが、指定されたすべてのメソッドはメンバ名またはトピックIDのハッシュに基づいているため、コードが変更されていない場合はリンクが解除されません。

詳細については、SandcastleヘルプファイルビルダーのNamingMethodのドキュメントを参照してください。

関連する問題