xml注释在发布模式下是否持续存在?
本文关键字:是否 存在 模式 注释 布模式 xml | 更新日期: 2023-09-27 18:11:43
一方面MSDN说:
XML文档注释不是元数据;它们不包括在编译后的程序集…
但是另一方面,Intellisense在Visual Studio中为。net类等显示它们(例如,如果您将鼠标悬停在Int32
上)
为了避免误解:我指的是这些:
/// <summary>
/// These comments.
/// </summary>
void example()
{
//Not these.
}
XML文档文件与程序集的dll是分开的。它们只是UTF8 XML文件。如果它们恰好与它们所记录的DLL在同一个文件夹中,那么Visual Studio将会选择它们。
编译时,如果存在XML文件,构建过程将自动将XML文件复制到构建输出文件夹中。
XML文档的任何内容都不会被放入任何DLL中。
如果你看一下框架DLL文件(例如在"C:'Program files (x86)'Reference Assemblies'Microsoft'Framework.NETFramework'v4.0"中),你会在它们旁边看到大量的".xml"文件。
不,当您将代码编译为IL....时,这些将被删除将代码编译为DLL或exe,然后使用ilasm工具打开它。你会注意到你的评论没有被包括在内。然后,您可以使用Reflector之类的工具反编译代码,并再次看到注释消失了。一般来说,ILDasm和Reflector都是很好的工具,你应该熟悉它们。