Visualisieren Sie Entity Framework- und Linq to SQL-Abfragen in LINQPad. Informationen zur Visual Studio-Erweiterung finden Sie unter EFCore.Visualizer
Unterstützte Datenbanken: SQL Server und PostgreSQL.
Unterstützte ORMs: Entity Framework Core 5
und LINQ to SQL
Wenn Sie LINQPad 6 oder neuer verwenden, müssen Sie Version 2.X dieser Bibliothek verwenden. Für LINQPad 5 müssen Sie Version 1.X verwenden
Version 2.1 und höher verwendet Microsoft Edge WebView2, um den Abfrageplan anzuzeigen. Dazu muss entweder WebView2 Runtime oder eine aktuelle Version von Edge Canary installiert sein. Um WebView2 Runtime herunterzuladen, besuchen Sie die Microsoft Edge WebView2-Downloadseite.
Wenn Sie über eine Developer- oder höhere Edition von LINQPad verfügen, können Sie das LINQPadQueryPlanVisualizer
Paket von NuGet verwenden, um den Visualizer zu Ihren Abfragen hinzuzufügen.
Um den Visualizer als LINQPad-Plugin zu installieren, laden Sie die neueste Version herunter und legen Sie die Visualizer-DLL direkt im Plugins-Ordner von LINQPad ab (standardmäßig unter Eigene DateienLINQPad PluginsNetCore3 für LINQPad 6 und Eigene DateienLINQPad PluginsFramework 4.6 für LINQPad 5). ). Das Plugin wird automatisch in allen Ihren Abfragen verfügbar sein.
Um den Abfrageplan oder fehlende Indizes anzuzeigen, rufen Sie die statische QueryPlanVisualizer.DumpPlan(query)
-Methode oder DumpPlan
Erweiterungsmethode für eine IQueryable
-Instanz auf. Sie müssen außerdem ExecutionPlanVisualizer
zur Namespace-Liste hinzufügen (klicken Sie auf F4, um das Dialogfeld zu öffnen). Wenn Sie auch das Abfrageergebnis ausgeben möchten, übergeben Sie true
als zweiten Parameter.
Abfrageausführungsplan für SQL Server:
Abfrageausführungsplan für PostgreSQL:
Für SQL Server kann der Abfrageplan auch Informationen über fehlende Indizes im Element QueryPlan/MissingIndexes/MissingIndexGroup
zurückgeben. Wenn im Plan fehlende Indizes vorhanden sind, zeigt der Visualizer eine zweite Registerkarte mit den fehlenden Indexdetails und einer Schaltfläche zum Erstellen des Index an.
Fehlender Index: