Я следующий C# код:Generic Конструктор класса
public interface IViewModel {
PageData Page { get; set; }
}
public class PageData { }
public class ViewModel<T> : IViewModel {
public PageData PageData { get; set; }
public T ViewData { get; set; }
public ViewModel(T viewData, PageData pageData) {
PageData = pageData;
ViewData = viewData;
}
}
Затем я использую его следующим образом:
PageData pd = new PageData();
ViewData vd = new ViewData();
ViewModel<MyViewData> model = new ViewModel<MyViewData>(vd, pd);
Можно ли изменить свой код, чтобы я мог использовать его как:
IViewModel model = new ViewModel(vd, pd);
В основном ViewModel будет использовать тип vd.