c# - 在泛型类上使用 "partial"

标签 c# generics partial-classes

我正在使用一个名为 ViewModelCollection<BaseViewModel> 的通用类它处理 ViewModel 列表并提供标准 add()delete()命令。

现在我想知道我是否可以使用 partial 来“扩展”这个类为某个 ViewModel 构造,其名称为 CarViewModel .

这样的事情可能吗?

partial class ViewModelCollection<BaseViewModel>
{
    ... some command and list stuff ...
}

partial class ViewModelCollection<CarViewModel>
{
    ... special commands for car view model
}

最佳答案

不,你不能,partial只是将类定义拆分到多个文件中,定义必须相同。您需要从 ViewModelCollection<T> 派生:

public class ViewModelCollection<T> where T: BaseViewModel
{
   //methods
}

public class CarViewModelCollection : ViewModelCollection<CarVieModel>
{
  //specific methods
}

关于c# - 在泛型类上使用 "partial",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5690301/

相关文章:

c# - 如何更改 #region 后面的 "name"变量的颜色

c# - 如何定义具有两种通用类型和两种类型约束的方法?

generics - 关于 Scala 泛型的简单问题

c# - 如果一个分部类继承自一个类,那么所有其他具有相同名称的分部类也应该继承相同的基类吗?

c# - 根据剑道网格中的 valueFormat 列更改数字格式

c# - 最小的跨 AppDomain 通信性能损失是多少?

java - 比较通用项目?

c# - 如何指定 C# 泛型类型必须支持 Parse(string)?

entity-framework - EF 5 模型第一部分类自定义构造函数如何?

c# - 向实体添加新的构造函数