在IntelliSense中隐藏某些泛型类型的扩展方法
本文关键字:泛型类型 扩展 方法 IntelliSense 隐藏 | 更新日期: 2023-09-27 18:01:13
我有一个扩展方法:
public static void Foo<T>(this MyClass<T> target)
where T : IEnumerable
{
// Code goes here
}
如果T是字符串,我想从InteliSense中隐藏此扩展方法,但不适用于其他类型,就像使用字符串时隐藏Linq中IEnumerable的扩展方法一样。我看过EditorBrowsableAttribute
,但它似乎不允许隐藏基于泛型类型的方法。
尝试将EditorBrowsableAttribute
放置到该方法(可能也放置到包含该方法的类(,并将该方法重新定位到另一个程序集(另一个项目(。之后,编译程序集并卸载项目,这样您就只有DLL引用了。这是使用EditorBrowsableAttribute
功率的唯一方法。