Visual Studio项目可以选择创建 XML文档文件。 据我所知,如果您想运行Sandcastle或NDoc等程序或创建MSDN样式API文档,XML文档文件会非常有用。精细。我不在乎。
根据此链接:http://msdn.microsoft.com/en-us/library/s0we08bk.aspx
将/ doc开关添加到Visual Basic,C#或C ++编译器命令行时,会生成一个.xml文件,作为IntelliSense文档的基础。
因此,我认为智能感知评论可以出现在这些生成的XML文件中。
但是我创建了一个小测试应用程序,我在一个完全不同的项目中调用一个方法,XML注释出现在我的Intellisense中 - 我甚至没有保存MediaHelper类!因此,在这种情况下,显然没有Intellisense正在使用的.xml文件。
鉴于这一切,Intellisense从哪里获得它的垃圾? 谢谢!
答案 0 :(得分:21)
当源代码在现有解决方案中(或者更好,同一个项目)时,Visual Studio不需要查找XML文件 - 它知道文档注释的位置,因此它将使用它们。 (就像Intellisense知道你在另一个文件中声明了哪些成员,即使你还没有真正重建过。)
如果要在同一解决方案中添加对DLL的引用而不是项目引用,则需要创建XML文件。因此,例如,我向NodaTime.xml提供了Noda Time包,因此即使您没有源代码,您仍然可以在Intellisense中看到注释。
答案 1 :(得分:5)
Intellisense从XML评论中获取它。
例如,假设我有一个班级:
///<summary>
/// This is an example class
///</summary>
static class Foo
{
//members
}
事实上,你可以比这更深入。例如,方法:
///<summary>
///Returns the object to string, uppercased.
///</summary>
///<param name="o">The object to be transformed.</param>
///<returns>The string.</returns>
public string someMethod(object o)
{
return o.ToString().ToUpper();
}