我有这个类定义:
public abstract class AbstractListViewModel<T> : AbstractWorkspaceViewModel
所以我有一个名为AbstractListViewModel
的类,它有一个泛型类型,它是AbstractWorkspaceViewModel
的子类。
但是,我需要将T
限制为AbstractWorkspaceViewModel
的子类。我尝试了以下方法:
public abstract class AbstractListViewModel<T> where T :
AbstractWorkspaceViewModel, : AbstractWorkspaceViewModel
public abstract class AbstractListViewModel<T> where T :
AbstractWorkspaceViewModel : AbstractWorkspaceViewModel
但这种语法无效。
所以在这里我试图说“一个名为AbstractListViewModel
的类,它是AbstractWorkspaceViewModel
的子类,并且具有泛型类型,它也是AbstractWorkspaceViewModel
的子类。
我该如何定义?
答案 0 :(得分:6)
这是约束的排序。试试这个:
public abstract class AbstractListViewModel<T> : AbstractWorkspaceViewModel
where T : AbstractWorkspaceViewModel
答案 1 :(得分:3)
你想要这个:
public abstract class AbstractListViewModel<T> : AbstractWorkspaceViewModel
where T : AbstractWorkspaceViewModel
答案 2 :(得分:2)
public abstract class AbstractListViewModel<T> : AbstractWorkspaceViewModel where T : AbstractWorkspaceViewModel