//Works! public override void Run(BaseDataClass <SettingsA> data) { var myDataA = data as DataA; if (myDataA != null) { //your parameter is a DataA; } }
public override void DoWork(BaseDataClass instance) { Console.WriteLine("ConsumingDerivedClass.DoWork(DerivedDataClass); Type of argument is '{0}'", instance.GetType()); base.DoWork(instance); // Some additional logic }
public virtual void DoWork(BaseDataClass instance) { Console.WriteLine("ConsumingBaseClass.DoWork(DerivedDataClass); Type of argument is '{0}'", instance.GetType()); }