如何在C#.NET文档中添加换行符

Tin*_*ker 180 .net c# xml-documentation

这应该更容易...

我想在我的代码中为XML文档添加"编码"换行符

/// <summary>
/// Get a human-readable variant of the SQL WHERE statement of the search element. &lt;br/&gt;
/// Rather than return SQL, this method returns a string with icon-tokens, which 
/// could be used to represent the search in a condensed pictogram format.
/// </summary>
Run Code Online (Sandbox Code Playgroud)

如您所见,我找到了一些答案,证明添加了<和>括号.有趣的是,好的'ol <br />换行符不会在Intellisense弹出窗口中创建换行符.

我发现这很烦人......

有什么建议?

pst*_*jds 297

您可以使用<para />标记来生成分段符,或者可以将<para></para>标记中的文本作为对文本进行分组并在其后添加空行的方式,但是没有相应的<br />或类似的东西.(根据这个旧的MS论坛帖子是设计的.)您可以从MS的本文档文章中获取可用标签的列表.记录您的代码

示例(基于原始OP样本):

/// <summary>
/// <para>Get a human-readable variant of the SQL WHERE statement of the search element.</para>
/// Rather than return SQL, this method returns a string with icon-tokens, which 
/// could be used to represent the search in a condensed pictogram format.
/// </summary>
Run Code Online (Sandbox Code Playgroud)

  • 关于这一点的坏处是它实际上添加了一个完整的空白行,而不仅仅是新行. (83认同)
  • 那么有没有人找到一种方法来实际插入一行而不是两行? (6认同)
  • 啊哈!现在正在做饭!谢谢!这一直困扰着我很长一段时间......我看到了列出的para选项,但认为它是一个"参数"的快捷方式. (5认同)
  • 不适合我.在VS 2010上使用VB.NET,尝试使用和不使用Powertools的彩色参数选项,忽略`<para>`标签,并将所有内容混合到Intellisense中的单行中.发现这个问题,Hans解释了这个问题:http://stackoverflow.com/questions/7070737/multiline-xml-comments-in-vb-net-and-visual-studio-intellisense. (2认同)

小智 65

这是我的用法,比如<br/>,它的工作:)

/// <summary>
/// Value: 0/1/2
/// <para/>0 foo,
/// <para/>1 bar,
/// <para/>2 other
/// </summary>
Run Code Online (Sandbox Code Playgroud)

  • 在VS` <para />`的最新版本中,似乎添加了一个空白行,而不仅仅是换行符. (15认同)
  • 为什么这个答案被低估?它有效,并且似乎比使用`<para>&#160; </ para>`,`<para>&nbsp; </ para>`或隐形字符更好的解决方案...... (8认同)
  • VS 2017:添加了空白行,而不仅仅是换行...微软肯定喜欢告诉我们我们想做什么...... (8认同)
  • @IlPADlI,+1用于举例.确认在VS 2012 Ultimate Update 5上工作. (2认同)

Joe*_*oel 26

添加一个<para>带有特殊字符的标记,255个字符或不可见的字符.

/// <summary>
/// Some text
/// <para>   </para>
/// More text
/// </summary>
/// <param name="str">Some string</param>
public void SomeMethod(string str) { }
Run Code Online (Sandbox Code Playgroud)

它会像这样工作:

在此输入图像描述

  • 这很有用,但是``'不起作用,而是使用`/// <para>&#160; </ para>` (8认同)
  • 不要在文本块之间使用`<para>`标记,而是应该在所有段落*周围使用`<para>`标记,除了*<summary>`元素中的第一个.对于`<typeparam>`,`<param>`,`<value>`,`<exception>`和`<returns>`元素,如果你有多个*all*段,请使用它们.你只有一个这些元素).对于所有其他块元素(包括另一个块元素中的`<note>`),在所有段落周围使用`<para>`标记,即使您只有一个. (8认同)
  • 我不知道为什么,但是复制粘贴`/// &lt;para&gt; &lt;/ para&gt;`根本不起作用。`/// &lt;para&gt;&#160; &lt;/ para&gt;`有效! (2认同)

小智 15

从Visual Studio 2019开始,使用<br/>注释功能可以使用新行创建注释。

例如:

 /// <summary>
 /// This is a comment.<br/>
 /// This is another comment <br/>
 /// This is a long comment so i want it to continue <br/> on another line.
 /// </summary>
Run Code Online (Sandbox Code Playgroud)

您可以在下图中看到上面的示例。

在此处输入图片说明

请注意,与使用<br/>标签相比,使用<para>标签时没有添加额外的行。

  • 仍然有用,因为此问题是有关如何在C#文档中添加换行符的google最高搜索结果。 (3认同)
  • 另请参阅文本部分:https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/xmldoc/recommended-tags#para 他们还建议现在使用 &lt;br/&gt; 标签。;-) (3认同)

Tra*_*s J 7

<br></br>并且<br />似乎不起作用,有时它并不是真正将<para>句子分开,而是希望有一个空行来分隔关注点。我在这里提到这一点是因为这个问题似乎是许多此类性质的封闭问题的根源。

我发现唯一有效的是

<para>&#160;</para>
Run Code Online (Sandbox Code Playgroud)

例如

/// <summary>
///     <para>
///         "This sentence shows up when the type is hovered"
///     </para>
///     <para>&#160;</para>
///     <para>int PrimaryKey</para>
///     <para>&#160;</para>
///     <para>virtual Relation Relation</para>
/// </summary>
Run Code Online (Sandbox Code Playgroud)

结果是

"This sentence shows up when the type is hovered"

int PrimaryKey

virtual Relation Relation
Run Code Online (Sandbox Code Playgroud)