ICollection / ICollection <T> problema de ambigüidade

Só quero fazer uma extensão simples parasygar sintáctico :

public static bool IsNotEmpty(this ICollection obj)
{
    return ((obj != null)
        && (obj.Count > 0));
}

public static bool IsNotEmpty<T>(this ICollection<T> obj)
{
    return ((obj != null)
        && (obj.Count > 0));
}

Funciona perfeitamente quando eu trabalho com algumas coleções, mas ao trabalhar com outras pessoas eu

A chamada é ambígua entre os seguintes métodos ou propriedades: 'PowerOn.ExtensionsBasic.IsNotEmpty (System.Collections.IList)' e 'PowerOn.ExtensionsBasic.IsNotEmpty (System.Collections.Generic.ICollection)'

Existe algumcanônico solução para este problema?

Não, não quero executar um elenco antes de chamar esse método;)

questionAnswers(2)

yourAnswerToTheQuestion