>Have the DoCommonProcess throw the exception instead of the calling method. If the exception messages need to be different for different calling methods, then change the DoCommonProcess method to accept an error message to use when it needs to throw the exception.
You're right. In this case, I don't need inheritance. Thanks