我正在使用Sandcastle 2.4.10520和Sandcastle Help File Builder 1.8.0生成.chm帮助文件.
在我的文档中,我正在使用<see>标签.
如果我尝试将枚举称为<see cref="NumberStyles"/>完美无缺.
如果我尝试引用枚举值,就像<see cref="NumberStyles.AllowTrailingWhite"/>我在文档文件中得到一个链接,但链接导致我找不到MSDN页面
我没有收到任何警告 - 我的xml文档是正确的.
我注意到引用枚举值的MSDN页面也有一个找不到页面的链接.例如:UInt64.Parse方法(String,NumberStyles,IFormatProvider)引用NumberStyles.AllowHexSpecifier,这导致找不到另一个MSDN页面.
我应该引用枚举而不是枚举值吗?
我该怎么做才能引用枚举?它甚至可能吗?
我正在学习如何在visual studio和C#中使用XML文档功能.
文档中使用的默认XML标记是"summary","param name"和"returns".
我想在默认标签上添加"备注".我还想添加自定义标签.
我查看了MSDN,XML文档教程和stackoverflow,但没有找到实现此目的的方法.任何建议都非常感谢,谢谢!
标记
我正在尝试<see cref="">在我的XML文档标签中使用我的API中的标签,但它们在帮助页面中显示为空白.
因此,对于描述我想说:
"获取或设置关联项的值."
其中Item是API中另一个对象的链接.
相反,我得到:
"获取或设置关联的值."
所以<see cref="">标签被忽略了.我甚至尝试过使用这里的例子以防万一我的声明是错误的,但这也没有用.
还有其他人有这个问题吗?新Web API 2帮助页面支持的XML文档标记的级别是多少?有人知道是否可以手动添加对此的支持,如果没有?
c# xml-documentation asp.net-web-api asp.net-web-api-helppages
这样的事可能吗?如果不清楚我在说什么,这里有一个详细的例子:
以我几周前编写的这个快速实用程序类(详细信息省略)以及我想分享的示例为例:
public abstract class CommonOdinAttributesForOwnedType<TProperty, TParent> : OdinAttributeProcessor<TProperty>
{
//snip
}
//EXAMPLE IMPLEMENTATION (Recommended to be nested inside MyBaseType):
protected class BoolAttributesInsideMyBaseType : CommonOdinAttributesForOwnedType<bool, MyBaseType>
{
protected override List<Attribute> GetAdditionalAttributes()
{
return new List<Attribute>()
{
new ToggleLeftAttribute(), //add more desired attributes here
};
}
}
Run Code Online (Sandbox Code Playgroud)
我在抽象类上方有以下 XML:
/// <summary>
/// Gives ALL objects of type TProperty drawn within classes derived from TParent a requested list of
/// Odin GUI attributes
/// <code>
/// //EXAMPLE IMPLEMENTATION (Recommended to be nested …Run Code Online (Sandbox Code Playgroud) 是否有可能有一个常数
public const string MyString = "myValue"
Run Code Online (Sandbox Code Playgroud)
在 xml 注释中获取其值“myValue”?我对此感兴趣,以生成招摇文档。
/// <summary>
/// Creates a new resource.
/// </summary>
/// <param name="request">The request object.</param>
/// <returns code="200">The id of the new resource.</returns>
/// <response code="400">
/// <see cref="Errors.BadRequestCodes.MyString"/><para/>
/// </response>
Run Code Online (Sandbox Code Playgroud)
这是记录端点的示例。在 swagger ui 中,我实际上看到的是“Errors.BadRequestCodes.MyString”,而不是在 400 状态代码部分看到消息“myValue”。有什么方法可以实现这一点吗?
在我对方法和类的.NET XML注释中,我尝试在<example><code></code></example>块中提供用法示例.当我使用Sandcastle使用我的XML文档生成.chm文档文件时,它总是很好地格式化并尊重我的<code>块中的换行符.但是,当我在Visual Studio的对象浏览器中浏览类和方法时,所有内容都在一行中运行,并且字体完全相同(代码不是等宽字体).这是由于我在XML评论中没有做到的事情,还是对象浏览器只是愚蠢的?我专门使用Visual Studio 2008 Team System.
我试图在我的类XML文档中包含一个代码片段,但编译器抱怨xml元素没有关闭!这是我想要实现的目标
/// <summary>
/// Method documentation here...
/// </summary>
/// <remarks>
/// <para>
/// This class should be used as follow:
/// <br/>
/// ************** PROBLEM IN NEXT LINE ********************
/// <c> MyClass class = new MyClass<String>(); </c>
/// </para>
/// </remarks>
public class MyClass<T>{
....
}
Run Code Online (Sandbox Code Playgroud)
我试图替换代码片段 /// <c> MyClass class = new MyClass{String}(); </c>
以前有人经历过这个吗?
谢谢你的帮助
我有一个使用ASP.NET WEB API开发的rest api.我使用了帮助页面nuget包来创建文档.我遇到的一个问题是以下问题.对于我的模型对象,我有xml文档注释,它们成为模型中每个成员的帮助页面上的描述.我希望描述的某些部分在新行上,但注释中的所有内容都是一个段落.我试图添加<br/>评论,但没有帮助.有谁知道如何实现这一目标?
我的代码包含一个带有一个方法的类,该方法返回一个最初作为参数传递给另一个方法的对象.我想在XML文档标记中指出这种关系.
class XmlDocThing
{
/// <summary>
/// Documentation for the other method.
/// </summary>
/// <param name="howDoIReferToThis">Magic object.</param>
public void AnotherMethod(object howDoIReferToThis) { }
/// <summary>
/// Documentation for this method.
/// </summary>
/// <returns>The object passed as the <paramref name="howDoIReferToThis"/>
/// argument of the <see cref="AnotherMethod"/> method.</returns>
public object FromThisMethod() { return null; }
}
Run Code Online (Sandbox Code Playgroud)
这导致警告:
警告1对"MyNamespace.XmlDocThing.FromThisMethod()"的XML注释具有"howDoIReferToThis"的paramref标记,但该名称没有参数
<see cref="AnotherMethod"/>执行方法引用的元素按预期工作,但<paramref>似乎没有cref属性(似乎只适用于方法和属性成员)或任何等效项.
这是否可能,如果是这样,怎么样?
我正在开发一个应用程序,它需要外部dll,我无法控制.我想为这些类添加文档,以便其他人可以理解为什么我正在对这些外部DLL文件进行某些调用.
将外部DLL文件添加到文档源确实记录了类,但所有摘要和其他信息都不可用.是否可以记录这些文件(最好不必将程序集反编译/重新创建为项目),因此我可以使用sandcastle生成相关的HTML文档?
我试图保持Sandcastles工作目录的启用,看看.xml文件(我看到的是从我的其他项目中复制过)是以某种方式生成并放在这个目录中.这似乎不是这种情况,没有生成文件,而是直接生成html文件.