我有一个类,其中包含一个私有方法和许多公共方法。在调用任何其他方法之前,必须每次调用此私有方法。
最简单的方法是在每个方法中调用该方法,但我不喜欢这种方法。是否有其他方法可以实现此目的?
我有一个类,其中包含一个私有方法和许多公共方法。在调用任何其他方法之前,必须每次调用此私有方法。
最简单的方法是在每个方法中调用该方法,但我不喜欢这种方法。是否有其他方法可以实现此目的?
你可能可以利用AOP,在此处完成一些操作,也许通过PostSharp; 但是,除非你要频繁地这样做,否则我建议保持简单,并仅添加额外的代码。
当然,如果你需要多态性并且需要覆盖仍然首先调用该方法(可能涉及公共非虚拟方法和受保护的虚拟方法),情况会变得更加复杂:
public void Foo() {
Bar()
FooCore();
}
protected virtual void FooCore() {...} // default Foo implementation
private void Bar() {...} // your special code