如何在ambigouos调用中为不同类型选择两种扩展方法?

时间:2017-04-16 07:43:42

标签: c# extension-methods

我有ICollection类型的各种扩展方法。其中之一是:

public static void Insert<T>(this ICollection<T> paramColeccion, int paramPosicion, ICollection<T> paramElementos)

我有各种ObservableCollection扩展方法,其中一个就是:

public static void Insert<T>(this ObservableCollection<T> paramColeccion, int paramPosicion, IEnumerable<T> paramElementos)

我试图以这种方式使用:

myObservableCollection.insert(0, myListWithElements);

在一个类中,我需要为ICollection和ObservableCollection提供扩展方法,但是当我尝试使用扩展方法时,ObservableCollection的插入我得到一个错误,因为它是一个不好的调用。

对于ObservableCollection,我可以使用ICollection中的扩展方法,但如果我这样做,它就不会升级我需要的CollectionChanged事件,这就是我需要使用ObservableCollection方法的原因。

感谢。

0 个答案:

没有答案