gpt4 book ai didi

.net - 在 .net xmldoc 注释中引用嵌入式资源的正确方法是什么?

转载 作者:行者123 更新时间:2023-12-03 13:39:26 26 4
gpt4 key购买 nike

我有一个使用 xml comments 的 C# 项目.我用 Sandcastle 从它们制作 chm 文件通过 Sandcastle Help File Builder .该项目中的一个成员函数使用了 embedded resource .我想在帮助文件中引用它。似乎sandcaSTLe 不支持这一点,但它解析的xml 文档文件支持。我这样说是因为下面的例子

/// <summary>
/// Displays the resource text.
/// </summary>
/// <remarks>The file is loaded from the <see cref="Resources.TextFile.txt"/>.</remarks>
private static void ShowResource()
{
// Getting text from embedded resource
}

如果我编译该代码并从生成的 xml 文档编译 chm,我会在构建日志中得到以下内容:
  Warn: CachedResolveReferenceLinksComponent: Unknown reference link target '!:Resources.HelpTextFile.txt'.

备注部分是:
The help file is loaded from the [!:Resources.TextFile.txt].

如果我这样做 Agent SmithReSharper建议并将 元素更改为 <see cref="Resources.TextFile"/>构建日志说:
Warn: CachedResolveReferenceLinksComponent: Unknown reference link target 'P:ProjectName.Properties.Resources.TextFile'.

并且 chm 的备注部分更改为:
The help file is loaded from the HelpTextFile().

所以我的问题分为两部分:
  • 我使用 元素来引用资源是否正确?
  • 有没有办法让 SandcaSTLe 在它生成的 chm 文件中引用嵌入的资源?
  • 最佳答案

    您可以使用 HTML anchor 标记来实现相同的结果。这就像在 XML 注释中使用 标记引用图像文件一样。

    /// The resources are loaded from
    /// <a href="../Resources.TextFile.txt">Resources.TextFile.txt</a>.

    将资源文件作为内容项包含在项目中。上面的示例假定它位于根文件夹中。 HTML 文件总是在 ./html 文件夹中,所以它需要上升一级。如果您将文件放在根文件夹之外的子文件夹中,请将其名称添加到 href 目标:“../FolderName/Resources.TextFile.txt”。

    如果您应用了 SandcaSTLe Styles 补丁,则可以在 标记上使用 href 属性而不是 cref 属性。文件位置信息将相同。
    /// The resources are loaded from
    /// <see href="../Resources.TextFile.txt" />.

    埃里克

    关于.net - 在 .net xmldoc 注释中引用嵌入式资源的正确方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1363532/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com