9

Mi piace la funzione "Risolvi" in Visual Studio.La funzione di "auto-risoluzione" di Visual Studio non funziona con i metodi di estensione: e ora?

scenario tipico:

  1. Digitare Debug
  2. Tipo .
  3. Si noti che non appare alcuna intellisense
  4. destro del mouse
  5. Selezionare Resolve
  6. Scegliere using System.Diagnostics o System.Diagnostics.Debug

Bella. Usalo sempre.

metodo di estensione scenario:

  1. Digitare var maxNumber = new int[] {1, 2, 3, 4}
  2. Tipo .
  3. noti che intellisense porta in primo piano i metodi di array, ma non i metodi di estensione LINQ tipo
  4. manualmente Max()
  5. tasto destro fare clic su Max()
  6. No Resolve da trovare
  7. clic destro sul int[]
  8. Ancora nessuna Resolve da trovare
  9. malvolentieri scorrere fino alla parte superiore della pagina e inserire using System.Linq; *

    * a patto di saper a memoria , altrimenti wrack il cervello o provare a guardare in su

Attuazione idea:

Se questa funzione dovesse essere inventato, una sola idea sarebbe per la prima voce intellisense che compare quando si digita . a leggere, <extension methods...>, e se clicco tale elemento, si aprirà una lista Resolve di tutti gli spazi dei nomi che contengono metodi di estensione per la classe in questione.

domande Coppia:

  1. 'questa caratteristica in programma per le future edizioni di Visual Studio?
  2. alcuna soluzione alternativa/consigli per trovare i metodi di estensione (e lo spazio dei nomi corrispondente) che potrebbero essere disponibili per una particolare classe?
+2

ReSharper (http://www.jetbrains.com/resharper/download/) lo fa già con i metodi di estensione. – adrianbanks

+0

Qualcuno sa come funziona per VS2012? –

risposta

1

Odio davvero dover "solo sapere" quale spazio dei nomi utilizzare per supportare una determinata classe. Voglio dire, ci sono MIGLIAIA DI LORO. Chi sa di quale spazio dei nomi hai bisogno? Non esiste una convenzione di denominazione che possa essere utilizzata come idea.

È un peccato perché uso Netbeans IDE per Java e "risolvere le importazioni" funziona perfettamente per tutto.

+4

Java ha persino metodi di estensione? Come l'OP dice che funziona bene per l'uso tipico, probabilmente altrettanto perfettamente come in NetBeans IDE per Java. – lucidquiet

+0

Non ci sono metodi di estensione per java. Oltre a questo, adoro anche la funzione "organizza le importazioni" di Eclipse e l'importazione dei pacchetti è più veloce perché importa automaticamente i pacchetti. Accanto a questo .NET ha molte funzioni estremamente buone ora. Non voglio fare un fastidioso confronto a riguardo ... –