2017-10-09 8 views
0

Exemple:C# ReSharper: supprimer les avertissements spécifiques sur toutes les cibles d'attributs spécifiques

private string foo; 

L'appareil émet un avertissement à juste titre CS0649: Field 'foo' is never assigned. Si j'ajouter mon attribut personnalisé, cependant, je veux l'avertissement à supprimer:

[Localize("foo")] 
private string foo; 

Je sais que cela est possible en utilisant ReSharper. Une bibliothèque J'utilise, Json.Net, a un attribut qui supprime le même avertissement sur tous les domaines, il est utilisé sur, si ReSharper est en cours d'exécution:

[JsonProperty("foo")] 
private string foo; 

J'ai essayé d'utiliser #pragma directives sur la classe d'attributs, joué avec In Source Suppression, mais en vain encore. Tout pointeur dans la bonne direction serait apprécié, merci!

Édition: Ajout d'une animation pour afficher le comportement souhaité lors de l'utilisation de Newtonsoft.Json.JsonProperty sur un champ non affecté.

Modifier: a ajouté des précisions car la fonction semble être ReSharper spécifique

animation showing how JsonProperty attribute suppresses the warning

+0

Etes-vous sûr que l'utilisation de l'attribut JsonProperty supprime cet avertissement? Parce que je ne peux pas le reproduire. – Evk

+0

@Evk merci pour votre réponse. J'ai ajouté une animation pour montrer le comportement avec JsonProperty (en utilisant Newtonsoft.Json). –

+0

Mais si vous construisez ce projet - n'émettra-t-il pas encore le message d'avertissement CS0169 (dans l'onglet de construction "Avertissements")? Aussi, as-tu installé Resharper? – Evk

Répondre