Kann ich ReSharper so konfigurieren, dass C # -Code korrigiert wird, wenn geschweifte Klammern nicht verwendet werden, um einen einzeiligen Codeblock wie folgt zu umgeben:
if (blnSomeCondition)
DoSomething(); // complain
if (blnSomeOtherCondition)
{
DoSomethingElse(); // don't complain
}
Vielen Dank
Antworten:
In der neuen Version von ReSharper (2016.x) wurde in den Codestil verschoben.
UPD1: für ReSharper 2017.x.
UPD2: für ReSharper 2018.x.
UPD3: für ReSharper 2019.x.
UPD4: für ReSharper 2020.x
quelle
Ryan ist korrekt (beachten Sie jedoch, dass sein Link auf die R # 2.0-Hilfe verweist). Das spezifische Verfahren ist wie folgt:
Denken Sie daran, dass die Codebereinigung zahlreiche Funktionen ausführt und sich nicht nur auf die Codeformatierung bezieht (siehe Details unter http://www.jetbrains.com/resharper/webhelp/Code_Cleanup__Index.html ). Verwenden Sie die Funktion daher mit Bedacht.
quelle
Gorohorohs Lösung ist naheliegend, aber anstatt "Klammern für mehrzeilige Klammern verwenden" auszuwählen, musste ich "Klammern hinzufügen" auswählen, um das Hinzufügen der Klammern im einzeiligen Szenario zu erzwingen. Und das musste ich in allen sechs Dropdowns unter "Force Braces" einstellen, um alle Szenarien zu erfassen:
Ich hatte wirklich gehofft, ReSharper so einrichten zu können, dass bei Verstößen gegen die Regel eine gelbe Warnung oder ein roter Fehler ausgegeben wird, aber ich habe keinen Weg gefunden, dies zu tun. Weil Sie Recht haben, Gorohoroh, macht Cleanup Code eine Menge Dinge und ich möchte die Möglichkeit haben, die Regelverstöße einzeln zu betrachten und zu beheben.
Danke für Ihre Hilfe!
quelle
Für ReSharper 2016.2.2 .
Sie sollten Ihr Profil zum Bereinigen bearbeiten. Das richtige Element heißt " Klammern hinzufügen / entfernen" für einzelne Anweisungen in "if-else", "for", "foreach", "while", "do-while", "using" . Dieses Element befindet sich in den C # => Codestilen Codestile.
Wenn das Element aktiviert ist, werden geschweifte Klammern hinzugefügt. Wenn diese Option nicht aktiviert ist, werden geschweifte Klammern entfernt.
Hinweis: Das Hinzufügen funktioniert jetzt nicht (ich weiß nicht warum - möglicherweise eine zu frische Version von ReSharper). Wenn Sie jedoch das erwähnte Element deaktivieren, werden die vorhandenen Klammern um einzelne Anweisungen nicht entfernt.
UPD: Das Problem wurde behoben, siehe die ersten beiden Kommentare unter diesem Beitrag.
quelle
Sie können es wie auf dem Screenshot gezeigt konfigurieren.
PS: Für diejenigen, die Probleme haben, Imgur.com-URLs zu sehen -> https://ibb.co/b4xijT
quelle
Nur wenn es jemand anderem helfen kann, auf einer Maschine meines Unternehmens Zeit zu sparen, reichte es trotz der hervorragenden Qualität seines Beitrags nicht aus, den Ratschlägen von Sergey zu folgen.
Bei der betreffenden Einrichtung (VS2017, R # 2019, beide auf dem neuesten Stand) waren diese Einstellungen auf der R # -Seite bereits gut, aber ich musste sie auch in den Visual Studio-Optionen ändern:
quelle
Nun ist es wieder bewegt. Der neue Ort befindet sich unter der Version Syntax Style on
ReSharper 2020.01
.Gehe zu
ReSharper > Options > Code Editing > C# > Syntax Style > Braces
Hier ist der Screenshot von
ReSharper 2020.01
quelle