1

我有这个类定义:

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

但是这种语法是无效的。

所以在这里我想说“一个名为AbstractListViewModelAbstractWorkspaceViewModel类是AbstractWorkspaceViewModel.

我如何定义这个?

4

3 回答 3

6

这是您的约束的顺序。尝试这个:

public abstract class AbstractListViewModel<T>  : AbstractWorkspaceViewModel
    where T : AbstractWorkspaceViewModel
于 2012-04-25T12:40:11.373 回答
3

你要这个:

public abstract class AbstractListViewModel<T> : AbstractWorkspaceViewModel
    where T : AbstractWorkspaceViewModel
于 2012-04-25T12:40:01.030 回答
2
public abstract class AbstractListViewModel<T> : AbstractWorkspaceViewModel where T : AbstractWorkspaceViewModel
于 2012-04-25T12:41:26.367 回答