You need to provide more details about your specific scenario. However, if, for example, you have a base abstract class that provides a contract, and you want to catch all the possible exceptions caused by derived classes when invoking a base class contract, you can do something like this:
public abstract class Base { protected abstract void InternalFoo(); protected abstract void InternalBar(); public void Foo() { try { this.InternalFoo(); } catch { } } public void Bar() { try { this.InternalBar(); } catch { } } }
source share