Visual Studio - 需要更智能的单词完成

时间:2009-08-26 15:35:00

标签: c# .net visual-studio

我希望单词完成显示所有匹配的类型名称(不仅仅是导入的名称空间中的名称)。如果没有导入该类型的nampespace - 它应该在我从列表中选择类型时导入,如果该类型在未引用的程序集中 - 该程序集应该添加到项目引用中(添加导入和引用 - 在提示之后,当然)
试图回忆确切的类型名称,它的名称空间有时是真正的痛苦。 有没有这样的产品完成? (是的,我知道Resharper。不,它不支持这个)

如果单词完成可以显示名称中任何地方都有文本的所有类型 - 不仅仅是在开头,那么PS会非常棒。例如,我输入“writer” - 完成后显示所有作者(TextWriter,StringWriter,StreamWriter等)

4 个答案:

答案 0 :(得分:3)

你应该看看ReSharper(再次)它确实支持类型名称的一部分的功能或只写一个驼峰案例类型名称的大写字母,例如可以在ST找到SomeType。

任何工具查找可能类型的程序集数量总是受限制。毕竟,除非你告诉工具有关装配的信息(以某种方式说明在GAC中注册装配,引用它或任何其他方法),工具将根本不知道该装配,因此不会搜索它。最重要的是,你真的不希望该工具搜索到许多程序集,因为你可能会在完成工具搜索之前编写任何类型的全名来完成

答案 1 :(得分:3)

对或错,智能感知的目标是为当前的编辑位置提供合法的完成。这绝不是100%准确,但我们确实努力只列出有效的完成。

显示未导入的类型名称和/或组件中的类型当前项目引用此方法时的苍蝇。而是建议已知对用户非法的代码。

确实,我们可以通过添加程序集引用来返回并解决此问题。但有些用户可能会觉得这很烦人。他们正在输入代码并突然添加引用并更改其导入。

我并不是说这不一定是一个糟糕的功能,只是它违背了当前的设计理念,并且有可能让很多用户感到不安。

答案 2 :(得分:1)

您正在寻找的是c#reshaper。 只需输入类似于MD的内容并按Ctrl + Space,它将显示每个标准包含。只需按空格键确认(在这种情况下MD5将显示)。它还可以了解您最常用的内容。

答案 3 :(得分:1)

除了Resharper,CodeRush也有此功能。 free version可能也是如此。