I love the "Resolve" feature in visual studio.
Typical scenario:
- Type in
Debug
- Type
.
- Notice that no intellisense appears
- Right-click
- Select Resolve
- Choose
using System.Diagnostics
orSystem.Diagnostics.Debug
Beautiful. Use it all the time.
Extension method scenario:
- Type in
var maxNumber = new int[] {1, 2, 3, 4}
- Type
.
- Notice that intellisense brings up array methods but no LINQ extension methods
- Manually type
Max()
- Right-click
Max()
- No Resolve to be found
- Right click on
int[]
- Still no Resolve to be found
Begrudgingly scroll to the top of the page and enter
using System.Linq;
**assuming you know it by heart, otherwise wrack your brains or try to look it up
Implementation idea:
If this feature were to be invented, one idea would be for the first intellisense item that appears when I type .
to read, <extension methods...>
, and if I click that item, it brings up a Resolve list of all namespaces that contain extension methods for the class in question.
Couple questions:
- Is this feature slated for future editions of Visual Studio?
- Any workarounds/tips for finding the extension methods (and the corresponding namespace) that might be available for a particular class?
I really HATE having to "just know" what namespace to use to support any given class. I mean, there are THOUSANDS OF THEM. Who knows what namespace you need? There's no naming convention that can be used as a clue.
It's a shame because I also use Netbeans IDE for Java, and "resolve imports" works flawlessly for everything.