2013-03-18 21 views
14

Czy istnieje sposób na łatwe zatrzymanie ostrzeżeń StyleCop przed wyświetlaniem w określonych projektach rozwiązania. Lub, co ważniejsze, sposób na wybranie, które projekty powinny być wykonywane w analizie StyleCop przez Visual Studio?Wyłączanie analizy stylecop dla konkretnych projektów w ramach rozwiązania

Mamy rozwiązanie z 9 projektami. Są tylko 2 projekty, w których chciałbym zobaczyć ostrzeżenia StyleCop, więc utworzyłem pliki StyleCop.Settings w tych katalogach głównych projektu. Oznacza to, że w przypadku pozostałych projektów stosuje się domyślny zestaw reguł, a za każdym razem, gdy otwieram klasę, wyświetlany jest ekran z ostrzeżeniami.

Jedyny sposób, w jaki mogę usunąć te ostrzeżenia, to dodać kolejny plik StyleCop.Settings powyżej poziomu folderów z wyłączonymi wszystkimi regułami i ustawić opcje scalania w konkretnych plikach ustawień, które mnie interesują, aby nie łączyć się z tym plikiem nadrzędnym . To jednak wydaje się złe. Czy istnieje opcja czystsza czy jest to moja jedyna?

AKTUALIZACJA: W szczególności szukam sposobu na zatrzymanie wyświetlania ostrzeżeń w programie Visual Studio. Dodałem plik Settings.StyleCop do folderu rozwiązania i wyłączyłem wszystkie reguły. Prowadzę analizę StyleCop w jednym z moich projektów testowych i nie zgłoszono żadnych błędów. Jednak otwarcie klasy testowej ujawnia szereg ostrzeżeń StyleCop, które chcę tłumić. Czy może to być wtyczka StyleCop dla ReSharper? Mam utworzony profil czyszczenia kodu i wyłączyłem niektóre reguły, ale nie wydaje się, aby to miało jakąkolwiek różnicę w moich klasach testowych.

+0

możliwe duplikat [Jak zrobić StyleCop zignorować projekt w roztworze ?] (http://stackoverflow.com/questions/8926993/how-to-make-stylecop-to-ignore-a-project-in-a-solution) –

Odpowiedz

22

Proszę spojrzeć na File Lists konfiguracji - pozwalają one wyłączyć przepisy domyślnie na projekt:

włączone lub wyłączone domyślnie

Ponadto nowa opcja pozwala na określenie, czy reguły powinny być domyślnie włączone lub wyłączone. Można to ustawić na poziomie projektu lub na poziomie SourceFileList. Na przykład, oto jaki sposób skonfigurować projekt ze wszystkimi zasadami domyślnie wyłączona, a tylko dwie reguły wyraźnie włączone:

<StyleCopSettings Version="4.3"> 
    <GlobalSettings> 
     <BooleanProperty Name="RulesEnabledByDefault">False</BooleanProperty> 
    </GlobalSettings> 
+1

Epickie. Dzięki, Alexander. Dodałem plik ustawień w folderze rozwiązania zawierającym to pojedyncze ustawienie globalne i usunięto wszystkie ostrzeżenia z projektów, których nie chcę pokrywać za pomocą StyleCop. – levelnis

+1

Uzgodnione. Czytanie połączonej dokumentacji list plików jest epickie. Jestem podekscytowany wykonaniem odwrotności - plik poziomu rozwiązania z włączonymi regułami i (kilka) plików na poziomie projektu z regułami domyślnie wyłączonymi, jak pokazano. Niezależnie od tego, czy domyślnie wyłączyć, to włączyć w razie potrzeby w dalszej części ... lub włączyć domyślnie wyżej, a następnie wyłączyć w razie potrzeby, w dół zależy od stosowanego współczynnika projektu - projekty do analizowania, a nie do analizy projektów. – J0e3gan