我有一个接口IPerson
和两个类,Adventurer
并Worker
实现它。我目前有单独ObservableCollection
的冒险家和工人。我有一个方法,我希望能够将 anObservableCollection<Adventurer>
和 anObservableCollection<Worker>
作为参数传递,但到目前为止我还没有运气。该方法仅使用实现的属性IPerson
,如果我将其声明为:
public void MyMethod(ObservableCollection<IPerson> collection)
...方法本身没有错误。但是,当我尝试传入 时,ObservableCollection<Adventurer>
出现 2 个错误:
无法从“System.Collections.ObjectModel.ObservableCollection”转换为“System.Collections.ObjectModel.ObservableCollection”`
和
'AoW.MyMethod(System.Collections.ObjectModel.ObservableCollection)' 的最佳重载方法匹配有一些无效参数`
我可以将两个ObservableCollection
s 传递给同一个方法吗?如果是这样,我应该怎么做?任何建议将不胜感激。