一年前,我在 Visual Studio 2015 中使用了 Ghostdoc Free,并且非常喜欢它的功能,并决定购买它。我现在必须使用 Visual Studio 2012 并注意到类的注释不如以前好。
它现在只是说:
/// The ClassName class.
而在此之前,它会区分实现接口的类,例如:
/// Implements the <see cref="IInterfaceName"
我查看了规则,但我不确定如何提取接口的名称。我现在有这个:
/// Generates the summary documentation of the class.
private void GenerateSummaryDocumentation()
{
// Assign the current code element.
var codeElement = Context.CurrentCodeElement;
// If the class appears to be a base class.
if (codeElement.Name.EndsWith("Base"))
{
// Write the summary documentation of the class.
this.WriteLine("Provides a base class to derive {0} of.", Context.ExecMacro("$(TypeName.Words.All)"));
}
else
{
if (codeElement.HasBaseTypes)
{
var baseType = codeElement.BaseTypes[0];
baseType = baseType.Substring(baseType.LastIndexOf(".") + 1);
this.WriteLine("Implementation of {0}", baseType);
}
else
{
// Write the summary documentation of the class.
this.WriteLine("Provides a class that implements a {0}", Context.ExecMacro("$(TypeName.Words.All)"));
}
}
return;
}
结果是:
/// Provides a class that implements a class name
这只是取类名并将其拆分。这/// Implementation of IInterfaceName
有点生硬(在多个接口的情况下)
那里有任何可以在此处插入接口名称的示例吗?