Weer wat geleerd: uitzetten van warnings in C#

Momenteel ben ik bezig om in een C# project alle warnings op te lossen. Warnings zijn in potentie mogelijke problemen en anders wel 'code smells'.

In vele gevallen is het redelijk simpel op te lossen, door ongebruikte variabelen te verwijderen etc.

Nu had ik 1 scenario waar de warning aangaf dat een bepaald event niet werd gebruikt. Dit bleek echter te kloppen, het ging hier om een 'dummy' class om lege objecten aan te geven. Uiteraard wordt het event hier dus ook niet in afgevuurd.

Na enig zoeken kwam ik tot een oplossing (met dank aan Jeroen Pluimers voor het zetje in de goede richting, hij heeft er zelf zojuist ook over geblogd ;-) ): gebruik #pragma warning disable.

Onderstaand een stukje code met een voorbeeld:

#pragma warning disable 0067
public event EventHandler ReachedEndOfFile;
#pragma warning restore 0067

Met het getal 0067 achter #pragma warning disable geef je aan welke warning moet worden onderdrukt. Met #pragma warning restore [nummer] herstel je de warnings weer voor het vervolg van de code. Eventueel kun je bij restore het nummer weglaten, dan worden alle warnings weer hersteld.

De warningnummers kun je vinden in het build output window in Visual Studio. In het warning lijstje zou weer te makkelijk zijn ;-)

Uiteraard is dit een uiterst redmiddel als er geen andere eenvoudige oplossing te vinden is.

Ronald Harmsen

I'm a software developer. When I'm not developing software I'm training & coaching other developers, speaking on a conference or fiddling with some technical stuff.

Arnhem, The Netherlands

Subscribe to Ronald to the cloud

Get the latest posts delivered right to your inbox.

or subscribe via RSS with Feedly!