我有一个MediaCollection<T>代表歌曲、视频或图片播放列表的类。我也有三个类:,Song它们都继承自一个抽象类。我的班级有以下限制:VideoPictureAMediaElementMediaCollection<T>
class MediaCollection<T>
where T : AMediaElement, new()
{
}
这让我可以收藏歌曲、图片、视频,但也可以收藏任何AMediaElement!
如何防止创建类型的对象MediaCollection<AMediaElement>?我可以制作MediaCollection摘要,然后制作其他三个类SongCollection,PictureCollection和VideoCollection,但我更喜欢使用该where子句的解决方案。