HighCore is correct, if you want to implement this functionality, your best choice would be to create an abstract base class with the supported virtual methods and then override them in type-specific classes which inherit from the abstract base class. Something similar to:
public abstract class BaseManager<T> where T : class {
public virtual void SaveObject() {
// Some common save logic if it can be done
}
}
public class EmployeeManager : BaseManager<Employee> {
public override void SaveObject()
{
// Your save logic
}
}
Hope this helps! Good luck!