C# 使用;“部分”;关于泛型类
我正在使用一个名为C# 使用;“部分”;关于泛型类,c#,generics,partial-classes,C#,Generics,Partial Classes,我正在使用一个名为ViewModelCollection的泛型类,它处理ViewModels列表,并提供标准的add()和delete()命令 现在,我想知道是否可以使用某个ViewModel的partial构造来“扩展”这个类,比如说,CarViewModel 这样的事情可能吗 partial class ViewModelCollection<BaseViewModel> { ... some command and list stuff ... } partial c
ViewModelCollection
的泛型类,它处理ViewModels列表,并提供标准的add()
和delete()
命令
现在,我想知道是否可以使用某个ViewModel的partial
构造来“扩展”这个类,比如说,CarViewModel
这样的事情可能吗
partial class ViewModelCollection<BaseViewModel>
{
... some command and list stuff ...
}
partial class ViewModelCollection<CarViewModel>
{
... special commands for car view model
}
部分类ViewModelCollection
{
…一些命令和列表内容。。。
}
部分类ViewModelCollection
{
…用于汽车视图模型的特殊命令
}
partial
仅用于跨多个源文件拆分类。类定义本身必须相同。不可以,partial
只是将类定义拆分到多个文件上,定义必须相同。您需要从ViewModelCollection
派生:
public类viewmodel集合,其中T:BaseViewModel
{
//方法
}
公共类CarViewModelCollection:ViewModelCollection
{
//具体方法
}
使用添加的部分方法并创建一个接口,然后您可以约束泛型使用该接口,并使用已定义的那些方法。谢谢您的回答。我希望我不必使用派生。我的应用程序中的视图模型部分是生成的,因此现在我必须在进行派生之前对生成器进行一些更改:-(
public class ViewModelCollection<T> where T: BaseViewModel
{
//methods
}
public class CarViewModelCollection : ViewModelCollection<CarVieModel>
{
//specific methods
}