public void ConstructViewModelData <T1, T2>(ViewModelBuilder <T1, T2> viewModelBuilder) where T1 : ViewModel where T2 : BaseData { viewModelBuilder.BuildViewModelData(); viewModelBuilder.BuildViewModelConcreteData(); }