如何在c#注释中转义字符?

Tom*_*son 101 c#

我今天意识到我不知道如何在C#的评论中转义字符.我想记录一个通用的C#类,但我不能写一个正确的例子,因为我不知道如何转义<>字符.我一定要使用&lt;&gt;?我不喜欢,如果是这样的话,因为我希望能够轻松阅读实际文档中的注释,因此我不必生成某种代码文档以便能够阅读示例代码.

Ode*_*ded 131

如果您需要在XML注释中转义字符,则需要使用字符实体,因此<需要&lt;像在您的问题中一样进行转义.

转义的替代方法是使用CDATA部分,达到相同的效果.

正如你所指出的那样,这会产生好看的文档,但阅读可怕的评论......

  • 仅供参考`<`将是`&lt;`和`>`将是`&gt;`.例如,`List&lt; string&gt; myStringList = new List&lt; string&gt;();` (17认同)
  • @ArvoBowen以防万一有人忽略了明显的内容,“lt”/“gt”分别代表“小于”/“大于”。 (2认同)

Mar*_*Pim 45

在简单的C#注释中,您可以使用任何字符(除非*/您开始使用注释/*,或者如果您开始注释,则使用换行符//).如果您使用的是XML注释,则可以使用CDATA部分包含"<"和">"字符.

有关C#中XML注释的更多信息,请参阅此MSDN博客文章.


例如

/// <summary>
/// Here is how to use the class: <![CDATA[ <test>Data</test> ]]>
/// </summary>
Run Code Online (Sandbox Code Playgroud)

  • 如果你想创建漂亮的html文档,你可能是正确的,但是我更有兴趣在VS中获得intellisense提示正确,为此我似乎必须使用XML转义.但替代方案+1. (11认同)
  • 嗯,我的评论中难以辨认的机器垃圾只有当我们花时间构建我们的文档文件时才会有帮助,而大多数用例正在阅读源代码(最好是界面)中的评论. (3认同)

小智 17

你说"我希望能够轻松阅读实际文件中的评论".我同意.

开发人员大部分时间都在代码中度过,而不是仔细阅读自动生成的文档.这些对于第三方图书馆来说非常棒,比如图表,但不适用于我们使用所有代码的内部开发.我有点震惊的是,MSFT没有提出一个能够更好地支持开发人员的解决方案.我们有动态扩展/折叠代码的区域...为什么我们不能在原始文本和处理过的XML注释之间或原始文本和处理过的HTML注释之间进行就地注释渲染切换?好像我应该在我的方法/类序言注释(红色文本,斜体等)中有一些基本的HTML功能.当然,IDE可以使用一些HTML处理魔法来激活内联注释.

我的解决方案解决方案:我将'<'更改为"{"和">"更改为"}".这似乎涵盖了典型的示例用法样式注释,包括您的具体示例.不完美,但务实给出可读性问题(以及使用'<'时出现IDE注释着色的问题)

  • 你的"解决方案"似乎比你想象的更正确.根据这[编译器识别器花括号作为尖括号并正确绑定它们](http://blogs.msdn.com/b/ansonh/archive/2006/09/11/750056.aspx). (5认同)

Bob*_*ack 6

C#XML注释是用XML编写的,因此您可以使用普通的XML转义.

例如...

<summary>Here is an escaped &lt;token&gt;</summary>
Run Code Online (Sandbox Code Playgroud)


Hol*_*osa 5

我发现这个问题的一个可行的解决方案是简单地包含两个示例:一个难以阅读的 XML 注释版本,带有转义字符,另一个使用常规//注释的可读版本。

简单,但有效。