C# OnMethod是否应始终引发事件(命名约定难题)?

C# OnMethod是否应始终引发事件(命名约定难题)?,c#,naming-conventions,C#,Naming Conventions,通常使用OnMethods来引发事件。 在派生类中重写该方法以添加一些附加逻辑(而不是附加到该方法引发的事件)也是很常见的 现在考虑这样的情况: 两类场景管理器和场景库。 场景管理员负责关闭/显示/隐藏场景。当SceneManager对场景执行此操作时,它将通知场景该事实,以便场景可以采取与其状态更改相关的操作。 为此,我决定在SceneBase中使用虚拟方法OnClose、OnShow、OnHide,这样SceneManager就可以在正确的时间通知SceneBase(而不是将SceneBas

通常使用OnMethods来引发事件。
在派生类中重写该方法以添加一些附加逻辑(而不是附加到该方法引发的事件)也是很常见的

现在考虑这样的情况:
两类场景管理器和场景库。 场景管理员负责关闭/显示/隐藏场景。当SceneManager对场景执行此操作时,它将通知场景该事实,以便场景可以采取与其状态更改相关的操作。
为此,我决定在SceneBase中使用虚拟方法OnCloseOnShowOnHide,这样SceneManager就可以在正确的时间通知SceneBase(而不是将SceneBase附加到SceneManager的事件,如SceneshowEvent)。我认为这种命名惯例对我来说是最具描述性的。
但是这种命名约定(OnMethodName)通常是为引发事件而保留的。 OnMethods通常是受保护的虚拟类,因此派生类可以向OnMethods添加一些其他逻辑(而不是附加到事件)。
所以,似乎除了上升事件之外,该方法中还有其他逻辑。不仅如此,例如,微软的Observer的模式界面还提供了一些不需要引发事件的方法。它们仅用于通知订阅者状态更改。
它们是

  • IObserver.OnNext,它为观察者提供新的或当前的 信息
  • IObserver.OnError,通知观察者发生错误 发生了
  • IObserver.OnCompleted,表示提供程序已完成 已完成发送通知
我可以把我的方法命名为《余雨》或《展示》。但对我来说,这种方法最适合这种情况。所以问题是:

使用name-OnMethod作为不会引发事件并从其他类调用的通知方法可以吗,就像在我的例子中一样?或者我应该只为事件上升方法保留它