代码检查:抽象或虚拟(可重写)事件从未被调用
该检查会报告从未被触发的可重写事件。 对于虚拟事件,将检查声明类及其派生类。 对于接口事件,将检查实现类。 仅被订阅而未被触发的事件通常是不完整或废弃的 API。
示例
public delegate void Handler();
class BaseNotifier
{
public virtual event Handler? Changed;
}
class DerivedNotifier : BaseNotifier
{
}
public delegate void Handler();
class BaseNotifier
{
public virtual event Handler? Changed;
protected virtual void OnChanged()
{
var handler = Changed;
if (handler != null) handler();
}
}
class DerivedNotifier : BaseNotifier
{
}
快速修复
一种可用的修复方法是生成一个事件触发方法。 之后,可以通过 OnChanged() 从该类或其派生类中触发该事件。
2026年 5月 8日