Convenzioni di ReSharper per i nomi dei gestori di eventi

Quando aggiungo un nuovo gestore di eventi per qualsiasi evento, VS crea un metodo come object_Click . Ma ReSharper sottolinea questo metodo come Avviso, perché tutti i metodi non dovrebbero avere delimitatori come “_”.

Come posso personalizzare le regole di ReSharper in modo che non sottolinei tali metodi? O forse dovrei rinominare tali metodi?

Grazie in anticipo.

Personalmente, suggerirei di rinominare i metodi. In generale, penso che VS abbia nomi terribili sia per i controlli che per gli eventi.

Preferisco che il nome di un metodo dica quello che fa , non quello che lo chiama. Ciò promuove anche il riutilizzo. Certo, la firma di un gestore di eventi spesso non è l’ideale per il riutilizzo – direi che spesso sarebbe utile l’espressione lambda che chiama un metodo con parametri più sensibili:

 button.Click += (sender, args) => SaveCurrentDocument(); 

ma ovviamente il designer non supporta quello 🙁

Ovviamente, rinominare tutti i metodi sarà più utile rispetto alla semplice modifica delle impostazioni R #, se riesci a trovarne alcune che funzionano …

Per C # (o VB), apportare la seguente modifica:

ReSharper | Opzioni | Lingue | C # | Stile di denominazione C #, Impostazioni avanzate … Modifica ” $object$_On$event$ eventi nei campi” da $object$_On$event$ a $object$_$event$ .

Potresti anche voler aggiungere regole aggiuntive ai tipi di quadro come “Tipi e spazi dei nomi” per tenere conto delle classi generate dal codice come ” Predefinito”. Ad esempio, aggiungi una nuova regola con un prefisso “Nome” e uno stile di nome “UpperCamelCase”.

Ho appena creato un’estensione per Visual Studio 2010, EventHandler Naming, che consente di specificare con un semplice schema ciò che si desidera siano i nomi dei gestori di eventi generati. Il modello predefinito nell’estensione è Su $ (NomeSito) $ (NomeEvento) che ti darà nomi di eventi come OnBtnNameClick invece di btnName_Click. Puoi ottenere l’estensione su http://tech.einaregilsson.com/2010/12/22/better-eventhandler-names-in-visual-studio-2010/

Sul tuo menu file dovresti avere “Resharper”. Fai clic su di esso -> Opzioni -> Convenzioni di denominazione (nel menu a sinistra).

Da lì è ansible specificare le convenzioni di denominazione utilizzate per ciascuno dei tipi / stili di denominazione.