public abstract class Deal { ...properties... public abstract T Add(); public abstract T Add(string id); public abstract T Update(); public abstract T Update(string id); public abstract T Get(string id); public abstract List<T> Find(); public abstract bool Delete(); public abstract bool Delete(string id); }
public class Deal<T> { public Car SoldCar {get; set; } public Truck SoldTruck {get; set; } public RV SoldRV {get; set; } public Boat SoldBoat {get; set; } }
public abstract class Deal<T> { public Inventory<AnyVehicleType> Vehicle { get; set; } public Inventory<AnyVehicleType> SoldUnit { get; set; } }
AnyVehicleType
Inventory