ReSharper-conventies voor namen van gebeurtenishandlers

Als ik een nieuwe gebeurtenishandler toevoeg voor een gebeurtenis, maakt VS een methode zoals object_Click.
Maar ReSharper onderstreept deze methode als Waarschuwing, omdat alle methoden geen scheidingstekens zoals “_” mogen hebben.

Hoe kan ik de regels van ReSharper aanpassen zodat dergelijke methoden niet worden onderstreept? Of moet ik zulke methoden misschien hernoemen?

Bij voorbaat dank.


Antwoord 1, autoriteit 100%

Voor C# (of VB), breng de volgende wijziging aan:

ReSharper | Opties | Talen | C# | C# Naamgevingsstijl, Geavanceerde instellingen…
Wijzig ‘Event-abonnementen op velden’ van $object$_On$event$in $object$_$event$.

Misschien wilt u ook aanvullende regels toevoegen aan entiteitstypen zoals ‘Typen en naamruimten’ om rekening te houden met door code gegenereerde klassen zoals ‘Standaard’. Voeg bijvoorbeeld een nieuwe regel toe met een ‘‘ Naamvoorvoegsel en een Naamstijl ‘UpperCamelCase’.


Antwoord 2, autoriteit 27%

Persoonlijk zou ik willen voorstellen om de methoden te hernoemen. Over het algemeen denk ik dat VS vreselijke namen bedenkt voor zowel controles als gebeurtenissen.

Ik geef er de voorkeur aan om een ​​methodenaam te laten zeggen wat het doet, niet wat het aanroept. Dat bevordert ook hergebruik. Toegegeven, de handtekening van een gebeurtenishandler is vaak niet ideaal voor hergebruik – ik zou zeggen dat een lambda-expressie die een methode aanroept met verstandigere parameters vaak nuttig zou zijn:

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

maar de ontwerper ondersteunt dat duidelijk niet 🙁

Natuurlijk zal het hernoemen van alle methoden meer werk zijn dan alleen het wijzigen van de R#-instellingen, als je er een kunt vinden die werken…


Antwoord 3, autoriteit 5%

Ik heb zojuist een extensie gemaakt voor Visual Studio 2010, EventHandler Naming, waarmee je met een eenvoudig patroon kunt specificeren wat je wilt dat de gegenereerde eventhandler-namen zijn. Het standaardpatroon in de extensie is On$(SiteName)$(EventName) waarmee u gebeurtenisnamen krijgt zoals OnBtnNameClick in plaats van btnName_Click. U kunt de extensie verkrijgen op http://tech.einaregilsson .com/2010/12/22/better-eventhandler-names-in-visual-studio-2010/


Antwoord 4

In uw bestandsmenu zou u “Resharper” moeten hebben. Klik erop -> Opties -> Naamgevingsconventies (in het linkermenu).

Van daaruit kunt u specificeren welke naamgevingsconventies worden gebruikt voor elk van de naamgevingstypes/stijlen.

Other episodes