我有一个接口IPerson
和两个类,Adventurer
和Worker
实现它。我目前为冒险家和工人单独拥有ObservableCollection
。我有一种方法,我希望能够通过ObservableCollection<Adventurer>
和ObservableCollection<Worker>
作为参数,到目前为止我没有任何运气。该方法只使用IPerson
实现的属性,如果我把它声明为:ObservableCollection作为参数传递和接口
public void MyMethod(ObservableCollection<IPerson> collection)
...有方法本身里面没有错误。然而,当我尝试在ObservableCollection<Adventurer>
传递,我得到2个错误:
无法从 'System.Collections.ObjectModel.ObservableCollection' 转换为“System.Collections.ObjectModel.ObservableCollection'`
和
的最好重载方法匹配 'AoW.MyMethod(System.Collections.ObjectModel.ObservableCollection)' 具有一些无效arguments`
我可以通过ObservableCollection
s到同一个方法吗?如果是这样,我应该怎么做呢?任何建议将不胜感激。
更改到'IEnumerable的'的伎俩。谢谢你的帮助。 –