如何转义c#注释中的字符?
我今天才意识到,我不知道如何在C#的评论中转义字符。 我想logging一个通用的C#类,但我不能写一个适当的例子,因为我不知道如何逃避<
和>
字符。 我必须使用<
和>
? 我不喜欢,如果是这样的话,因为我想在实际的文档中轻松地阅读注释,所以我不必生成某种types的代码文档来阅读示例代码。
如果您需要在XML注释中转义字符,则需要使用字符实体,所以<
需要被转义为<
,就像你的问题一样。
转义的替代方法是使用CDATA
部分,达到相同的效果。
正如你所说,这将产生良好的文件,但一个可怕的评论阅读…
在普通的C#注释中,你可以使用任何字符(除了*/
如果你使用/*
开始注释,或者如果你使用//
开始注释,则使用换行符)。 如果您使用的是XML注释,则可以使用CDATA部分来包含“<”和“>”字符。
有关C#中XML注释的更多信息,请参阅此MSDN博客文章 。
例如
/// <summary> /// Here is how to use the class: <![CDATA[ <test>Data</test> ]]> /// </summary>
你说:“我想让阅读实际文件中的评论变得容易”。 我同意。
开发人员大部分时间都花在代码上 ,而不是阅读自动生成的文档。 对于像图表这样的第三方图书馆来说,这些工作是非常好的,但对于我们使用所有代码的内部开发来说,这些工作并不好。 我感到震惊的是,MSFT还没有拿出一个更好的支持开发者的解决scheme。 我们有dynamic扩展/折叠代码的区域…为什么我们不能在原始文本和已处理的XML注释之间,或原始文本和已处理的HTML注释之间有就地注释呈现切换? 似乎我应该在我的方法/类序言评论(红色文字,斜体等)中有一些基本的HTMLfunction。 当然,一个IDE可以处理一些HTML处理的魔力,让内联评论活跃起来。
我的解决scheme是 :我将“<”改为“{”和“>”改为“}”,这似乎涵盖了典型的使用风格评论,包括您的具体示例。考虑到可读性问题(以及使用'<'时发生的IDE注释着色问题)
C#XML注释是用XML编写的,所以您可以使用正常的XML转义。
例如…
<summary>Here is an escaped <token></summary>
我发现这个问题的一个可行的解决scheme是简单的包括两个例子:一个难以阅读的XML注释w /转义字符的版本,另一个可读的版本使用传统的//
注释。
简单,但有效。
比使用{…}更好的是使用≤…≥(小于或等于符号,大于或等于符号,Unicode中的U2264和U2265)。 看起来像下划线的尖括号,但仍然肯定尖括号! 只添加几个字节到您的代码文件。
更好的尝试U2280和U2281 – 只需从Unicode字符列表中复制和粘贴(math运算符部分)即可。