有没有什么方法可以在Intellisense中“隐藏”一个类的名称,而该类唯一的目的是提供扩展方法?
我想从Intellisense列表中删除类名,但需要该类的扩展方法以通常的方式通过Intellisense对外部程序集可用。
有没有什么方法可以在Intellisense中“隐藏”一个类的名称,而该类唯一的目的是提供扩展方法?
我想从Intellisense列表中删除类名,但需要该类的扩展方法以通常的方式通过Intellisense对外部程序集可用。
我希望您可以使用EditorBrowsable属性来完成此操作:
[EditorBrowsable(EditorBrowsableState.Never)]
static class MyExtensions { }
不幸的是,这似乎没有起作用。
好的,我有这个答案。Hallgrim的建议是用...标记类。
[EditorBrowsable(EditorBrowsableState.Never)]
实际上是可行的,但只有在引用 程序集 而不是项目时才有效。这种情况发生在我自己的 VS 解决方案中编写提供类的程序集时。扩展方法像往常一样可用。
[EditorBrowsable(EditorBrowsableState.Never)]
的类中定义的扩展方法。 - Max Toro
System.Web.*
提供了它们自己的StringExtensions
,但在Intellisense中它总是被识别为模糊的名称。虽然不会影响任何功能,但我不喜欢在任何地方看到红色感叹号。 - Dan Lugg