Frage

Ist es möglich, einen vollständigen Namensraum von allen FxCop Analyse auszuschließen, während immer noch den Rest der Baugruppe mit der SuppressMessageAttribute Analyse?

In meinem aktuellen Fall habe ich eine Reihe von Klassen, die von LINQ to SQL erzeugt, die eine Menge von FxCop Probleme verursachen, und natürlich werde ich nicht alle von denen, ändern FxCop Standards entsprechen, wie viele dieser Änderungen wäre gegangen, wenn ich die Klassen erneut erzeugt wird.

Ich weiß, dass FxCop ein Projekt Option auf generierten Code zu unterdrücken Analyse, aber es scheint nicht, die Einheit und Kontextklassen von LINQ 2 SQL als generierten Code erstellt zu erkennen.

War es hilfreich?

Lösung

Wenn Sie Ihre Klassen mit dem [GeneratedCode] Attribute markieren, können Sie die / ignoregeneratedcode Flagge mit FxCop verwenden wie in diesem MSDN Beitrag beschrieben:

FAQ: Wie verhindere ich FxCop von Warnungen vor generierten Code Brennen

Sie können eine neue Code-Datei hinzuzufügen haben und implementieren neue Teilklassen gibt das Attribut zu den Klassen hinzuzufügen:

[GeneratedCode]
public partial class MainDataContext { }

So stellen Sie sicher, dass Sie alles auf den richtigen Namespace hinzufügen, wenn Sie Ihre neue Datei erstellen.

Andere Tipps

Fügen Sie einen [GeneratedCode] attribute die Klassen.
Bearbeiten . Ich mit den gleichen Namen zu partiellen Klassen gemeint, wie die anderen Antwort erklärte

Verwenden Sie den erzeugten Code Attribut, heres die Blog-Post aus dem Code-Analyse-Team zu diesem Thema.

Das an der Spitze des Namespace sollte es tun:

[GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "9.0.0.0")]
<Assembly: SuppressMessage("Microsoft.Design", _
    "CA1020:AvoidNamespacesWithFewTypes", _
    Scope:="namespace", _
    Target:="Missico.IO")> 

Put-Anweisung in GlobalSuppressions.vb an der Wurzel des Projektes.

Alles, was ich habe, ist VB Beispiel.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top