Mit Rider 2021.1 lassen sich Projekte viel einfacher um Docker-Unterstützung erweitern. Sie können direkt vom Begrüßungsbildschirm aus eine Verbindung zu einem .NET-Prozess herstellen und über Debugger-Hints in den Debugging-Prozess eingreifen. Für ASP.NET-Entwickler haben wir Scaffolding – einschließlich der Frameworks Identity und Entity (für CRUD) – sowie Routenvorlagen-Analysen hinzugefügt. Die C#-Unterstützung wurde massiv erweitert, diesmal vor allem in Bezug auf die Unterstützung von Codemustern und Records.
Ihre Projekte in Rider lassen sich jetzt einfacher um Docker-Unterstützung erweitern – Sie können die Dockerfile direkt beim Erstellen eines neuen Projekts generieren. Wählen Sie einfach Docker Support im Dialog New project aus, wenn Sie eine ASP.NET-Core-Webanwendung, einen Worker-Service oder eine Konsolenanwendung erstellen.
Wenn Sie eine Dockerfile für ein vorhandenes Projekt erstellen möchten, verwenden Sie Add | Docker Support im Projekt-Kontextmenü des Toolfensters „Solution Explorer“.
Rider kann ohne Weiteres Dockerfiles ausführen, die von Visual Studio generiert wurden. Sie müssen in der Dockerfile keine Änderungen vornehmen, um sie mit Rider kompatibel zu machen.
Weitere Informationen: Dockerfile für .NET-Anwendungen mit Rider generieren.
Die Inspektion Merge into pattern kann jetzt mit viel mehr Codemustern umgehen.
Zusammenführen von Nullprüfungen mit anderen Prüfungen zu einer einzigen Musterprüfung.
Umwandlung von Prüfungen mit ?.
-Ausdrücken für bedingten Zugriff in verschachteltes Pattern-Matching.
Verflachung von if
-Hierarchien durch Zusammenführen der Prüfungen.
Und schließlich können Muster in einem einfachen Dekonstruktionsmuster var (a, b)
durch Erweiterung in die vollständige Form zusammengeführt werden.
Wir haben die Unterstützung für Records in C# 9.0 erweitert.
Die Refactorings Extract interface und Extract superclass funktionieren jetzt mit Record-Deklarationen. Dasselbe gilt für File Layout und die Features im Zusammenhang mit der XML-Dokumentation.
Wir haben eine Reihe von neuen Inspektionen und Aktionen eingeführt. Redundant explicit property declaration für Eigenschaften in Record-Deklarationen kann hilfreich sein, wenn Sie Ihren Code zu Records mit Positionsparametern und impliziten Eigenschaftsdeklarationen migrieren. Ein entsprechender Quick-Fix Remove explicit property ist ebenfalls enthalten.
Wir helfen Ihnen auch, für Ordnung in Ihrem Code zu sorgen: Die Inspektion Redundant 'record' type declaration body und der dazugehörige Quick-Fix ersetzen einen leeren Record-Typdeklarationskörper durch ein Semikolon.
Deconstruct()
-Methode umwandeln möchten, hilft Ihnen die Kontextaktion To explicit constructor. Deconstruct()
-Methode. Wir freuen uns, Ihnen eine neue Inspektion vorstellen zu können: Inline temporary variable.
Manchmal verwenden wir in einem Programm denselben Wert unter verschiedenen Namen. Wäre in solchen Fällen nicht eine transparentere Lösung möglich? Sicher – und Rider hilft Ihnen, diese Lösung umzusetzen. Dabei kann sogar der eine oder andere Bug zum Vorschein kommen, wenn die temporäre Variable mit einem anderen Wert initialisiert oder später im Code geändert werden sollte.
Benannte Tupel gehören seit C# 7 zum Alltag, aber bisher mussten ihre Komponenten manuell umbenannt werden. Damit ist jetzt Schluss – Sie können nun einfach das Refactoring verwenden.
Logische not
-Muster können Ihre Typprüfungen viel lesbarer machen. Rider bietet Ihnen daher die Möglichkeit, die !()
-Syntax durch ein not
-Muster zu ersetzen.
In Bezug auf die Unterstützung von C# 10.0 haben wir bereits die ersten Schritte unternommen und Rider das Arbeiten mit konstanten interpolierten Zeichenfolgen beigebracht.
Slice
und Substring
den Bereichsoperator zu verwenden, wenn dadurch der Code einfacher wird. Wir haben gute Nachrichten für alle, die mit ASP.NET MVC, ASP.NET Web API oder Razor-Pages arbeiten! Für ASP.NET-Core-Projekte steht jetzt ein Scaffolding-Mechanismus zur Verfügung.
Rider unterstützt das Scaffolding von Areas, Controllern, Razor-Pages, Views und Identity, einschließlich der Generierung von Boilerplate-Code für vollständige CRUD-Vorgänge mit dem Entity-Framework.
Das Feature ist unter Windows, Linux und macOS verfügbar.
Rider uses dotnet aspnet-codegenerator under the hood.
Weitere Informationen: Scaffolding für ASP.NET-Core-Projekte in Rider 2021.1 verfügbar
Routenvorlagen werden in MVC-Anwendungen häufig verwendet, um die Zuordnung von HTTP-Anfragen zu den Endpunkten der Anwendung zu konfigurieren. In Version 2021.1 haben wir die Unterstützung von Routenvorlagen eingeführt. Rider bietet jetzt Code-Completion, Strukturnavigation, Inspektionen und Quick-Fixes für sie. Zu den Neuerungen zählen:
Weitere Informationen finden Sie unter Das ist neu in ReSharper.
Vorhandene Dateien im Ordner können jetzt vor dem Veröffentlichen gelöscht werden. Dadurch kann verhindert werden, dass Sie beispielsweise beim Verschieben von Dateien unwissentlich veraltete Dateien verwenden. Beachten Sie, dass Rider den Zielpfad vollständig leert, wenn diese Option aktiviert ist.
Die MDN-Dokumentation wird jetzt mit Rider mitgeliefert. Auf diese Weise werden Verbindungsprobleme zur MDN-Website vermieden, und die Dokumentation für Ihre HTML-, CSS- und JavaScript-Dateien kann schneller angezeigt werden. Auch der Umfang der im Editor angezeigten Informationen wurde erweitert (für die JavaScript-APIs werden zum Beispiel die unterstützten Browserversionen angezeigt).
Das Überprüfen von CSS-Code mit Stylelint ist jetzt einfacher. Es bedarf nur weniger Klicks, um mit diesem Linter Probleme in Ihrem Code zu beheben. Bewegen Sie den Mauszeiger oder die Einfügemarke auf ein Problem in Ihrer Datei, drücken Sie Alt+Enter und wählen Sie Stylelint: Fix current file.
Darüber hinaus können Sie unter Preferences / Settings | Languages & Frameworks | Style Sheets | Stylelint den Pfad zur Konfigurationsdatei angeben.
Bei der Arbeit mit Stylesheets können Sie jetzt die Spezifität Ihrer Selektoren überprüfen – bewegen Sie einfach den Mauszeiger auf den Selektor. Alternativ können Sie den Fokus auf einen Selektor legen und mit F1/Strg+Q das Dokumentations-Popup aufrufen, das diese Informationen ebenfalls enthält.
Mit einer neuen, integrierten Browser-Vorschau können Sie sich unkompliziert HTML-Dateien anzeigen lassen. Um die Vorschau zu öffnen, klicken Sie im Widget in der oberen rechten Ecke des Editors auf das Symbol mit dem Rider-Logo.
Jetzt können Sie direkt auf dem Begrüßungsbildschirm eine Verbindung zu einem .NET-Prozess herstellen! Es ist nicht erforderlich, zuerst eine Projektmappe mit dem Quellcode zu öffnen. Öffnen Sie auf dem Begrüßungsbildschirm den Tab Attach to process, wählen Sie in der Liste den gewünschten .NET-Prozess aus, und schon startet Rider eine Debugging-Sitzung.
Rider bietet jetzt interaktive Debugger-Hints! Die Hints im Editor geben Ihnen nicht nur Informationen – über Debugger-Hints können Sie direkt in die Debugging-Sitzung eingreifen und mit dem Debugging-Prozess interagieren. Klicken Sie auf den Hint und wählen Sie Set Value, um in den interaktiven Modus zu wechseln. Sie können Rohwerte eingeben oder mithilfe der Completion Variablen auswählen. Tastenkürzel stehen ebenfalls zur Verfügung.
Sie können Debugger-Hints mit der Einstellung Show values inline unter Settings | Build, Execution, Deployment | Debugger | Data Views aktivieren.
Auf Basis der vielen innovativen Features, die Rider bereits für Unity bereitstellt, bietet Ihnen Rider 2021.1 jetzt noch mehr Kontext zu Ihrem Unity-Projekt. Wo verwendet Unity Ihren Code in Assets? Welche leistungskritischen Codepfade werden von Update in jedem Frame aufgerufen? Wie könnten Sie Ihren Code besser debuggen, testen und die Testabdeckung prüfen?
Rider zeigt Ihnen, wo Unity Ihren Code in Scenes, Assets und Prefabs verwendet, indem die Verwendungen direkt im Unity-Editor hervorgehoben werden.
Rider 2021.1 erweitert diese Unterstützung auf Animation-Assets und zeigt die Verwendung von Eigenschaften und Methoden als Animation-Callbacks an.
Rider bietet Code-Completion und Validierung für die „Magic Strings“ von Unity. Tags, Layer-Namen, Scenes und Coroutinen werden bereits unterstützt, und mit Rider 2021.1 kommen Animations-Statuswerte hinzu.
Bisherige Rider-Versionen markierten Methoden als leistungskritisch, häufig aufgerufen oder Burst-kompiliert – aber der Grund dafür war nicht immer klar.
Rider 2021.1 fügt Menüelemente hinzu, um alle Methoden anzuzeigen, die im Hot Path zu einer Update
-Methode aufgerufen werden, oder um die ausgehenden Aufrufe nachzuvollziehen, die in eine bekannte rechenintensive Unity-API münden.
Bei Burst-kompilierten Methoden verfolgt Rider die Route durch alle aufgerufenen Methoden bis hin zum Anfang des Burst-Kontexts zurück.
Rider bietet bereits erweiterte Debugging-Unterstützung für Unity-Projekte: Das Active-Scene-Objekt wird angezeigt und die Debugger-Ansicht enthält untergeordnete Game-Objekte und -Komponenten.
Rider 2021.1 hilft nun auch beim Debuggen von SerializedProperty-Instanzen. Nicht relevante Felder sind standardmäßig ausgeblendet. Angezeigt werden nur Werte, die für den Typ der Eigenschaft relevant sind. Sie können untergeordnete Eigenschaften und alle serialisierten Daten leicht überblicken.
Die Unterstützung für Unity-basierte Unit-Tests in Rider umfasst jetzt Code-Coverage für Play-Mode-Tests. Sie können Edit-Mode- und Play-Mode-Tests für Unity jetzt erkennen, ausführen und debuggen sowie ihre Codeabdeckung prüfen, ohne den Code-Editor zu verlassen.
Es gibt noch zahlreiche weitere Änderungen und Korrekturen, darunter eine robustere Handhabung von Metadateien, Performance-Verbesserungen beim Hinzufügen von Protokolleinträgen im Unity-Toolfenster und eine verbesserte Gruppierung von Unity-bezogenen Dateivorlagen.
Unser Plugin Godot Support for Rider wurde ebenfalls aktualisiert. Es unterstützt jetzt die Ausführung von NUnit-Tests direkt im Game-Prozess, um sicherzustellen, dass alles wie erwartet funktioniert. Follow the instructions in this pull request to make it work in your game today! Bitte teilen Sie uns Ihr Feedback in den Kommentaren zum Pull-Request mit.
Rider for Unreal Engine ist weiterhin als öffentliche Preview verfügbar und wird voraussichtlich im Lauf des Jahres 2021 als Teil von Rider veröffentlicht. Sie können die Preview bis zur Veröffentlichung kostenlos evaluieren.
The Unreal Engine’s Cast for type-safe dynamic casting is now available as a postfix template in code completion. Rider unterstützt mit RIGVM_METHOD ein weiteres Unreal-Engine-spezifisches Reflection-Makro.
Die Erstunterstützung für Unreal Engine 5 ist da – inklusive intuitiver Korrekturen basierend auf dem Feedback, das wir vom Epic-Games-Team erhalten haben.
Auf der C++-Seite wurden Include und Typhierarchien sowie Unterstützung für Google Test und einige weitere Unit-Test-Frameworks für C++ hinzugefügt.
Weitere Informationen finden Sie hier.
In v2021.1 bieten wir Ihnen die Möglichkeit, mit der neuen Aktion Save to Shelf Ihre Änderungen sowohl im Shelf zu speichern als auch in den lokalen Änderungen zu behalten. Für den Zugriff auf diese Aktion können Sie Tastenkürzel nutzen oder im Popup Search Everywhere den Text „Save to Shelf“ eingeben.
Im Dialogfeld Compare with branch können Sie jetzt eine Datei aus einem anderen Branch kopieren. Wählen Sie dazu einfach die zu kopierende Datei aus und klicken Sie auf das neue Abwärtspfeil-Symbol neben Show diff.
Rider speichert beim Schließen den Status des Projektmappen-Explorers einschließlich der geöffneten Knoten. Sie müssen also die Knoten nicht mehr jedes Mal manuell erweitern, wenn Sie eine Projektmappe erneut öffnen oder die IDE neu starten.
Wenn in einem vertikal geteilten Editorfenster mehrere Tabs geöffnet sind, können Sie auf einen Tab doppelklicken, um diesen im Editorfenster zu maximieren.
Wir haben den Ordner-Auswahldialog für Windows überarbeitet. Jetzt werden nur noch Ordner angezeigt, die Sie auswählen können.
Sie können jetzt unter Windows auf Ihre letzten Projekte zugreifen, indem Sie in der Taskleiste oder im Startmenü mit der rechten Maustaste auf das Rider-Symbol klicken.
Die neuen modalen Dialoge in macOS Big Sur werden jetzt unterstützt.
Der Toolbox-Manager für den Windows-Forms-Designer wurde komplett überarbeitet.
Im linken Teil des Fensters finden Sie die Liste aller vom System oder von Drittanbietern bereitgestellten Steuerelementbibliotheke, gruppiert nach Anbieter. Wenn Sie eine Bibliothek in der Liste auswählen, können Sie im mittleren Bereich die jeweiligen Steuerelemente auswählen. Nur diese werden in der Toolbox angezeigt, um die Liste übersichtlich zu halten. Im rechten Bereich sehen Sie die Metadaten des ausgewählten Steuerelements.
Sie suchen in der umfangreichen Liste einer Bibliothek nach einem bestimmten Steuerelement? Kein Problem! Die neue Suchfunktion im mittleren Fensterbereich grenzt die Liste der Steuerelemente ein und hebt die Suchzeichenfolge in der Ergebnisliste hervor.
Zu guter Letzt geben neue Zähler am unteren Rand an, wie viele Komponenten beim Speichern aus der Toolbox entfernt oder zu dieser hinzugefügt werden. So wissen Sie stets Bescheid, was passiert, wenn Sie auf Übernehmen klicken.
Ab sofort bietet Ihnen die Kurzdokumentation dieselbe Syntaxhervorhebung wie der normale Code-Editor. Außerdem wird die Kurzdokumentation jetzt angezeigt, wenn Sie die Maus auf ein Symbol bewegen.
Die Auswahl einer Schriftart, die auch nach Stunden noch angenehmes Arbeiten ermöglicht, ist von entscheidender Bedeutung. Die kürzlich hinzugefügten Typografie-Einstellungen erleichtern diese Auswahl und ermöglichen individuellere Einstellungen. In v2021.1 können Sie unter Preferences / Settings | Editor | Fonts die Dicke der verwendeten Normal- und Fettschrift optimieren.
Unsere XAML-Vorschau bietet einen wichtigen Feedback-Mechanismus für die WPF- und XAML-Entwicklung. Wir haben das Vorschau-Tool jetzt verbessert.
Rider zeigt die XAML-Vorschau direkt im Editorfenster an und bietet die Wahl zwischen verschiedenen Ausrichtungs- und Layoutoptionen. Sie können die Ausrichtung des Vorschau-Tools so anpassen, dass es vertikal oder horizontal vom Editor getrennt ist.
Das fokussierte Element wird jetzt hervorgehoben, damit Sie es auch bei einem komplexen UI-Design leichter finden.
Mit dem Tool können Sie jetzt TabItem-Instanzen anklicken. Dies ist eine enorme Erleichterung bei der Entwicklung von Benutzeroberflächen mit mehreren Tabs.
Bei der Darstellung der XAML-Vorschau werden jetzt Designeigenschaften wie DesignHeight und DesignWidth berücksichtigt.
Bitte beachten Sie, dass die XAML-Vorschau nur unter Windows und nur für .NET-Framework-Anwendungen verfügbar ist.
Weitere Einzelheiten finden Sie in diesem Blogbeitrag: Verbesserte XAML-Vorschau in Rider 2021.1.
Wir haben einige neue Einstellungen eingeführt:
new()
-Klammern ein Leerzeichen gesetzt werden soll. Bei benutzerdefinierten Namensregeln haben wir die Reihenfolge der Anwendung geändert – spezifischere Regeln gehen jetzt vor.
Und schließlich haben wir die Aktion Reindent only für die Auswahlformatierung hinzugefügt. Damit können Sie Rider anweisen, nur die Einrückungen des ausgewählten Codes anzupassen, anstatt eine komplette Neuformatierung durchzuführen.
EditorConfig wird in der .NET-Community immer beliebter, und wir verbessern kontinuierlich die Integration des Tools in Rider. Diesmal haben wir folgende Verbesserungen vorgenommen:
csharp_indent_case_contents_when_block
wird jetzt unterstützt. Wir haben ein neues Refactoring Inline Variable für lokale let
-Zuweisungen hinzugefügt.
Rider kann jetzt ein zulässiges Sprachniveau basierend auf dem Projekt und dem für einen Build verwendeten Compiler berechnen und Verbesserungsvorschläge zur Modernisierung Ihres F#-Codes anbieten.
To Interpolated String, ein neuer Analyzer mit Quick-Fix, ermöglicht die Konvertierung einer im printf
-Stil formatierten Zeichenfolge in eine interpolierte Zeichenfolge gemäß F#-5-Syntax. Thanks again to Saul for the nice implementation.
Die Analyse redundanter Klammern und der entsprechende Quick-Fix helfen Ihnen bei Klammern in Mustern, Typen und einfachen Ausdrücken. In künftigen Versionen werden wir die Unterstützung auf weitere Ausdrucksarten erweitern.
Die F#-Unterstützung wurde darüber hinaus durch zahlreiche weitere Quick-Fixes, Refactorings und andere Verbesserungen ausgebaut. Please see the full release notes for more details.
Das Space-Plugin ist jetzt für Rider verfügbar. Über die Option Get from VCS können Sie direkt auf dem Begrüßungsbildschirm eine Verbindung zu Ihrer JetBrains-Space-Organisation herstellen. Sobald Sie angemeldet sind, können Sie Projekt-Repositories anzeigen und klonen, Code-Reviews durchführen und Space-Automatisierungsskripte schreiben.
Wir haben eine Bedienoberfläche zum Bearbeiten von Grants beim Ändern von Objekten hinzugefügt.
Das Fenster Modify user, das Sie mit Strg+F6 für einen Benutzer im Datenbank-Explorer aufrufen können, bietet jetzt die Möglichkeit, Objekten Grants zuzuordnen.
Dieses Feature ist für PostgreSQL, Redshift, Greenplum, MySQL, MariaDB, DB2, SQL Server und Sybase verfügbar.
Systemfunktionen und -prozeduren werden nicht mehr als Fehler hervorgehoben, wenn sie ohne Qualifizierung verwendet werden. Darüber hinaus funktionieren jetzt die Navigations- und Completion-Funktionen für sie.
Weitere Informationen zur Erweiterung der Datenbankunterstützung finden Sie unter Das ist neu in DataGrip.
Wir haben die Funktion NuGet Smart Restore on a build implementiert. Sie führt bei einer Build-Aktion ein Restore durch, wenn anhand einer Heuristik erkannt wird, dass ein externes Restore durchgeführt wurde. Wenn Sie dies ausschalten möchten, finden Sie die Einstellung unter Settings/Preferences | Build, Execution, Deployment | NuGet | Smart Restore on Build.
Rider unterstützt jetzt parallele Builds auf neueren Versionen von Mono. Sie können die Funktion unter Settings | Build, Execution, Deployment | Toolset und Build aktivieren.
Sie können jetzt konfigurieren, wie Rider bei der Suche nach Text mit externen Abhängigkeiten umgehen soll. Wählen Sie im Dialog Find in Files die Option Scope und klicken Sie auf die Schaltfläche „…“. Das Fenster Scopes wird geöffnet, und Sie können sehen, ob der Suchumfang External Dependencies (Externe Abhängigkeiten) umfasst. Mit den Schaltflächen auf der rechten Seite können Sie die Einstellung ändern.
Wir unterstützen jetzt das durch Zeilenumbrüche getrennte JSON-Lines-Format, das für strukturierte Daten und Protokolle verwendet wird. Die IDE erkennt die Dateitypen .jsonl, .jslines, .ldjson und .ndjson.
Dateien in diesen Formaten bestehen aus mehreren Zeilen, die jeweils ein JSON-Objekt enthalten. Als Trennzeichen wird das Zeilenvorschubzeichen verwendet. Am Anfang oder Ende von Zeilen sind keine Kommas erforderlich, und es ist nicht nötig, den gesamten Dateiinhalt in eckige oder geschweifte Klammern zu setzen.