2013-07-24 6 views
8

Precedentemente in Visual Studio, se hai dichiarato una classe con un'interfaccia, puoi posizionare il cursore sull'interfaccia, fare clic con il pulsante destro del mouse e selezionare Implementare l'interfaccia. (See here per una domanda simile per VS 2008.)Come si implementa automaticamente un'interfaccia in C# 4.0 e Visual Studio 2012?

Ho iniziato a lavorare su un progetto che ha definito numerose interfacce che verranno utilizzate con SimpleInjector. Ora, mentre sto iniziando a scrivere le mie lezioni di servizio, ho notato che l'opzione di menu Interfaccia strumento è scomparsa.

Come posso implementare tutti gli stub di metodo necessari come è possibile in VS 2008?

Spiacente se si tratta di un duplicato, tuttavia, non ho potuto trovare questa risposta da nessuna parte.

+0

http://msdn.microsoft.com/en-us/library/tx1s9z1w.aspx sembra essere ancora lì –

+0

FYI, questa funzione esiste anche in VS2010. In realtà, non ho provato a utilizzarlo in VS2012 perché di solito non sfrutto troppo spesso questa funzione, quindi non posso commentare se è presente o meno. Ma secondo la mia esperienza, se si hanno altri errori di compilazione nel codice allo stesso tempo, o mancano riferimenti all'assembly rilevanti, a volte opzioni come questa non appaiono perché non riescono a capire cosa sia o cosa si stia facendo. –

+0

Funziona per me, come sempre. L'interfaccia "Implementare" è la prima voce di menu nel menu di scelta rapida quando fai clic con il pulsante destro del mouse sul nome dell'interfaccia. VS2012 di sicuro. –

risposta

9

Che non è cambiato. Tutto quello che devi fare è passare il mouse sopra il nome dell'interfaccia nella classe, e la barra blu di sottolineatura dovrebbe apparire, dandoti le opzioni per implementare l'interfaccia. Se la sottolineatura blu non viene visualizzata, verificare che l'interfaccia sia accessibile con gli assembly e gli spazi dei nomi a cui si fa riferimento.

+0

Ah, fallisco da parte mia. Questo si stava verificando a causa di un errore che ho fatto quando ho definito l'interfaccia. Non ricevevo alcun avviso da Intellisense. Ho risolto l'interfaccia e l'opzione a discesa dalla dichiarazione dell'interfaccia è apparso. – RLH

+2

@RLH: Posso indovinare? 'public class IMyInterfaceIAccidentallyDeclaredAsAClass {}'? –

+0

Sì. Ho sempre falsato la dichiarazione. L'interfaccia deve essere definita come pubblica, i metodi non hanno una dichiarazione pubblica/privata. – RLH

8

Quando si guarda il nome dell'interfaccia, si dovrebbe vedere un po 'di sottolineatura blu:

first image

Se si posiziona il mouse su di esso, apparirà un menu a discesa, lasciando che si implementa l'interfaccia:

second image

+1

+1, ma dovrebbe avere la cerchia a mano libera .S –

4

Posizionare il cursore da qualche parte nel testo dell'interfaccia (la parte dopo i due punti) e premere Ctrl + .

Problemi correlati