【问题标题】:Escape pointy brackets in C# XML comments转义 C# XML 注释中的尖括号
【发布时间】:2014-09-15 23:57:37
【问题描述】:

我正在编写一个带有以下签名的简单比较函数:

  /// <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 解析器的情况下将文字不等号放在箭头所在的位置。我该怎么做?

【问题讨论】:

标签: c# .net visual-studio-2010 comments xml-comments


【解决方案1】:

如果你想在方法本身上面的文档中看到它,那你不能,把它完整地写出来,它也更清楚。

对于所有其他目的(如代码洞察、生成的文档等),您可以使用文字

&lt;

使用

&gt;

大于。

【讨论】:

    【解决方案2】:

    我同意你不能让你的原始 XML cmets 看起来特别漂亮,但我通常会尝试让我的 cmets 在对象浏览器窗口和 IntelliSense 中生成好看的 cmets,而不必担心它们在源代码。因此,我可能会像这样编写您的方法和 cmets:

     /// <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"/>
     /// &lt; <paramref name="arg2"/>
     /// </para><para>
     /// GREATER_THAN iff <paramref name="arg1"/>
     /// &gt; <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()
    

    在对象浏览器窗口中,该方法的文档如下所示:

    private static ...Program.Inequality Compare(uint arg1, uint arg2)
    ...计划

    的成员

    总结:
    将两个无符号整数转换为有符号整数和 比较他们

    参数:
    arg1:不等式左侧
    arg2:不等式右侧

    回报:
    LESS_THAN iff arg1 GREATER_THAN 如果 arg1 > arg2
    EQUAL_TO iff arg1 == arg2

    【讨论】:

      【解决方案3】:

      我作弊。我使用这些字符:≪≫

      /// <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 生成的文档中看起来不错。

      我保留了一个生成以下行的 sn-p

      // ≪≫ ⇒ ◄==► ―― ≤ ≥ ... 加上一些其他特色

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2022-12-19
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多