我有一个包含重载构造函数和重载方法的类。
如果我使用参数启动类,那么我的想法就是我不需要将这些信息填充到我的方法中。但随着事情的发展,它会让人感到有些困惑。
我想知道是否有一种方法告诉C#或Visual Studio如果调用某个构造函数,不要在IntelliSense中显示该方法,希望以干净整洁的方式没有任何“黑客”。
提前致谢。
答案 0 :(得分:9)
不,你不能以这种方式改变IntelliSense的行为。
您面临的问题实际上是code smell关于您的班级设计。
如果除非使用给定的构造函数,否则某些方法没有任何用处,您应该拆分类,以便明确描述不同的功能。
为每种不同类型的构造函数创建公共行为和子类的基类可能是有意义的。这将有效地满足您的要求,并遵循适当的面向对象设计。