c# XML注释中的转义尖括号
本文关键字:转义 XML 注释 | 更新日期: 2023-09-27 18:14:49
我正在写一个简单的比较函数,签名如下:
/// <summary>
/// Casts two unsigned integers to signed integers and compares them
/// </summary>
/// <param name="arg1">Left side of inequality</param>
/// <param name="arg2">Right side of inequality</param>
/// <returns>
/// LESS_THAN if arg1 <----
/// </returns>
private static Inequality Compare(uint arg1, uint arg2)
我想在不触发XML解析器的情况下将文字不等式符号放在箭头所在的位置。我该怎么做呢?
如果你想在方法本身上面的文档中看到它,那么你不能,只是完整地写出来,这样也更清楚。
对于所有其他目的(如代码洞察、生成的文档等),您可以使用文字<
使用>
我作弊。我使用这些字符:≪比
/// <returns>
/// if arg1 ≪ 0 then return Inequality.EQUAL_TO
/// if arg2 == 2 ...etc
/// </returns>
也可用于
/// <summary>
/// Checks if the List ≪ Dictionary ≪ int,string≫ ≫ is valid
/// </summary>
在智能感知、你的代码和VS生成的文档中看起来都很好。
我保留了一个产生以下行
的代码片段//≪¹¹⇒↓↓—≤≥…加上一些其他的特殊
我同意你不能让你的原始XML注释看起来特别漂亮,但是我通常尝试让我的注释在Object Browser窗口和IntelliSense中产生好看的注释,而不用担心它们在源代码中的外观。因此,我可能会像这样编写您的方法和注释:
/// <summary>
/// Casts two unsigned integers to signed integers
/// and compares them
/// </summary>
/// <param name="arg1">Left side of inequality</param>
/// <param name="arg2">Right side of inequality</param>
/// <returns><para>
/// LESS_THAN iff <paramref name="arg1"/>
/// < <paramref name="arg2"/>
/// </para><para>
/// GREATER_THAN iff <paramref name="arg1"/>
/// > <paramref name="arg2"/>
/// </para><para>
/// EQUAL_TO iff <paramref name="arg1"/>
/// == <paramref name="arg2"/>
/// </para></returns>
private static Inequality Compare(
uint arg1, uint arg2)
{
var int1 = (int)arg1;
var int2 = (int)arg2;
return int1 < int2
? Inequality.LESS_THAN
: int1 > int2
? Inequality.GREATER_THAN
: Inequality.EQUAL_TO;
} // end: Compare()
在Object Browser窗口中,该方法的文档看起来像这样:
程序。不平等比较 (使用uint __arg1 、使用uint 最长)
程序简介:
将两个无符号整数转换为有符号整数和比较他们参数:
arg1: Left side of inequality
arg2:右边的不等式的回报:
LESS_THAN iff arg1 <最长>
== arg2最长>