2014-11-21 11 views
5

Mit Resharper können Sie mit der rechten Maustaste auf Referenzen für ein Projekt klicken und Referenzen optimieren auswählen. Dies zeigt uns Klassenbibliotheken, die vom Compiler nicht verwendet oder benötigt werden.Gibt es eine Möglichkeit, dass Resharper eine nicht verwendete Referenz ignorieren kann?

Ich habe eine Klassenbibliothek, die nur als eine Referenz verwendet werden soll (wird nie eine Notwendigkeit sein, den Code tatsächlich zu verwenden). Die DLL ist so eingerichtet, dass sie sich beim Start selbst injiziert, solange sie Teil der Referenzen ist. Falls Sie neugierig sind, warum dies jemals gemacht wird, behandelt es nicht gefunden und Fehler für ASP.NET MVC-Projekte (Nuget package page).

Gibt es eine Möglichkeit, dass ich Resharper sagen kann, dass diese Referenz entweder Teil des vom Compiler oder eines Teils der verwendeten Referenzen ist? Ich möchte nur versuchen zu verhindern, dass Entwickler meine DLL aus Versehen entfernen.

+0

persönlich auslösen, würde ich es nur ihnen bekannt machen. Wenn sie in diesem Projekt arbeiten, sollten sie wissen, was es tut und was erforderlich ist. Seltsam, wenn es noch einen Weg gibt. – TyCobb

+0

Die meisten Entwickler werden dies nicht tun (besonders, wenn sie keinen Nachschärfer installiert haben). Aber ich möchte sicherstellen, dass ich alle meine Basen abgedeckt habe. Ich bin der Typ, der Referenzen optimiert, um sicherzustellen, dass ich keine unnötigen Klassenbibliotheken habe. – techvice

+3

Ich finde nugget-Pakete, die das Verhalten der Anwendung durch ihre bloße Anwesenheit ohne explizite Registrierung im Startup-Code der Anwendung ziemlich ärgerlich ändern. – CodesInChaos

Antwort

1

Sie können Resharper mit StyleCop verbinden. Es ermöglicht eine Warnung in Ihrem Code basierend auf StyleCop-Einstellungen. jeder Denn es Warnung ist eine Art und Weise (die „ReSharper Blase“ verwendet wird) eine Warnung zu deaktivieren: http://tof.canardpc.com/view/49d10973-eb25-4a26-90b2-19d872083285.jpg

es ist eine Kommentarzeile in Ihrem Code hinzufügen Warnung auf die Warnung zu deaktivieren;

// ReSharper disable once RedundantUsingDirective 
using My.Unused.Reference; 

Nach einigen Tests, Šaldy es scheint, ReSharper nicht darüber schert, wenn Sie das „Optimieren Reference“

+0

Können Sie diese Antwort erweitern, um den Code zu erklären? Das wäre für zukünftige Zuschauer hilfreicher. – starsplusplus

+0

Ich hatte einige Informationen, hoffe, dass es nützlich sein wird. – Jalkar

+0

Das ist für eine using-Anweisung. Keine Referenz. Ich sehe nicht, wie das tatsächlich zutrifft. – techvice