235 votes

C # - Supprime sélectivement les avertissements obsolètes personnalisés

Je suis à l'aide de l' Obsolete d'attribut (comme proposé par les amis programmateurs) pour afficher un avertissement si une méthode est utilisée.

Est-il un moyen pour supprimer l'avertissement similaire à CodeAnalysis' SuppressMessage en des points où l'utilisation est-elle justifiée?

Merci!!!!

MODIFIER

C'est pour [Obsolete("Some message")] que j'ai besoin d'inclure des détails au sujet de l'avertissement. Toutefois, #pragma warning disable 612 ne fonctionne plus une fois que j'ai ajouter le message à la nu [Obsolete] attribut...

EDIT 2

Trouvé le droit d'alerte du numéro 618 si vous avez un message d'erreur suivantes obsolète de l'attribut.

Donc pour faire ce que je veux faire:

#pragma warning disable 618

et puis, après l'appel

#pragma warning restore 618

Grâce à Jared Nominale et Jon Skeet pour me pointer dans la bonne direction!

291voto

Jon Skeet Points 692016

Utilisez #pragma warning disable :

 using System;

class Test
{
    [Obsolete("Message")]
    static void Foo(string x)
    {
    }

    static void Main(string[] args)
    {
#pragma warning disable 0618
        // This one is okay
        Foo("Good");
#pragma warning restore 0618

        // This call is bad
        Foo("Bad");
    }
}
 

Restaurez l'avertissement par la suite afin de ne pas manquer les "mauvais" appels.

150voto

Jordão Points 29221

L' intention est de désactiver l’avertissement pour obsolète l' utilisation, indépendamment de savoir si la construction est marquée avec ou . Donc utiliser les deux CS0612 et Avertissement CS0618:

21voto

accolade Points 1173

Voici comment obtenir de l'attention/numéro de l'erreur en premier lieu:

  1. Reconstruire votre projet.
  2. Aller à la Sortie de la fenêtre.
  3. Regardez jusqu'à la ligne de l'avertissement/d'erreur que vous souhaitez supprimer.
    Par exemple:
    C:\Users\Username\Documents\Visual Studio 2010\Projects\Projectname\Classname.cs(203,7): warning CS0162: Unreachable code detected
  4. Copie le numéro de la partie après le "CS".
  5. Ensuite, procéder comme Jon Skeet dit.

(Mieux toujours procéder comme Jon Skeet dit...)

9voto

JaredPar Points 333733

Vous cherchez le `` Avertissement désactiver directive

Essentiellement, vous ajoutez la commande suivante au-dessus du site d’appel dans le fichier .cs.

612 est l’ID de message d’erreur pour appeler les méthodes obsolètes

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X