我正在尝试开发自定义 fxcop
规则来检查以基类名称结尾的派生类的名称。
我主要关心的是Fxcop.Sdk
中有任何属性可以知道该特定类是否派生自任何基类?如果是,那么如何?
如何实现此规则?
最佳答案
是的,是的,你可以。看看下面的图片:
您在这里看到的是来自 introspector 的屏幕截图,这是一个帮助您开发 FxCop 规则的工具。
如您所见,每个类都有一个属性BaseType
和BaseClass
。您可以使用它们来检查该类是否继承自任何内容。
请注意,在内省(introspection)模型中,例如,不从任何对象派生的类将显示为从 Object
派生。
您可以跳过这些(以及任何其他可能的错误):
public override ProblemCollection Check(TypeNode type)
{
ClassNode classNode = type as ClassNode;
if (classNode == null)
return;
if (classNode.BaseType == null)
return;
if (classNode.BaseType == FrameworkTypes.Object)
return;
// Namechecking logic
return Problems;
}
关于c# - Fxcop 自定义规则检查派生类名称以基类名称结尾,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24300284/