The problem is this, there is an abstract class of a model from which a certain number of specific models are inherited, they all have a few heap of their own fields except for some common ones, each has its own corresponding View associated, the problem begins in that each instance needs to be wrapped in the appropriate ViewModel (view they are different, and their behavior is different) - now I have a separate function involved in it, it defines a switch to which conditions are added as I write new classes with this signature:
public static TaskViewModelBase GetTaskViewModel(TaskBase tsk, IDataTask taskDataService) All this nonsense smacks badly, as you understand. Is there any elegant solution or architecture chosen to hell?