Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Hinweis
Dies ist nicht die neueste Version dieses Artikels. Die aktuelle Version finden Sie in der .NET 9-Version dieses Artikels.
Wichtig
Diese Informationen beziehen sich auf ein Vorabversionsprodukt, das vor der kommerziellen Freigabe möglicherweise noch wesentlichen Änderungen unterliegt. Microsoft gibt keine Garantie, weder ausdrücklich noch impliziert, hinsichtlich der hier bereitgestellten Informationen.
Die aktuelle Version finden Sie in der .NET 9-Version dieses Artikels.
Dieser Artikel ist der siebte Teil des Blazor-Tutorials zur Filmdatenbank-App, das Ihnen die Grundlagen der Erstellung einer ASP.NET Core Blazor Web App mit Funktionen zur Verwaltung einer Filmdatenbank vermittelt.
Dieser Teil der Tutorial-Serie deckt das Hinzufügen eines neuen Feldes zur Filmklasse, zu CRUD-Seiten und zur Datenbank ab.
Die Aktualisierung der Datenbank wird durch EF Core Migrationen verarbeitet. EF Core verfolgt Änderungen an der Datenbank transparent in einer Migrationsverlaufstabelle und löst automatisch eine Ausnahme aus, wenn die Modellklassen der App nicht mit den Tabellen und Spalten der Datenbank synchronisiert sind. EF Core Migrationen machen es möglich, Probleme mit der Datenbankkonsistenz schnell zu beheben.
Wichtig
Stellen Sie sicher, dass die App für die nächsten Schritte nicht ausgeführt wird.
Hinzufügen einer Filmbewertung zum Modell der App
Öffnen Sie die Models/Movie.cs
-Datei und fügen Sie eine Rating
-Eigenschaft mit einem regulären Ausdruck hinzu, der den Wert von Rating
auf die genauen Motion Picture Association-Film-Rating-Bezeichnungen beschränkt:
[Required]
[RegularExpression(@"^(G|PG|PG-13|R|NC-17)$")]
public string? Rating { get; set; }
Hinzufügen der Filmbewertung zu den CRUD-Komponenten der App
Öffnen Sie die Create
Komponentendefinitionsdatei (Components/Pages/MoviePages/Create.razor
).
Fügen Sie den folgenden <div>
-Block zwischen dem <div>
-Block für Price
und der Schaltfläche „Erstellen“ (<button>
) ein:
<div class="mb-3">
<label for="rating" class="form-label">Rating:</label>
<InputText id="rating" @bind-Value="Movie.Rating" class="form-control" />
<ValidationMessage For="() => Movie.Rating" class="text-danger" />
</div>
Öffnen Sie die Delete
Komponentendefinitionsdatei (Components/Pages/MoviePages/Delete.razor
).
Fügen Sie den folgenden Beschreibungslistenblock (<dl>
) zwischen dem Beschreibungslistenblock für Price
und der Komponente EditForm
ein:
<dl class="row">
<dt class="col-sm-2">Rating</dt>
<dd class="col-sm-10">@movie.Rating</dd>
</dl>
Öffnen Sie die Details
Komponentendefinitionsdatei (Components/Pages/MoviePages/Details.razor
).
Fügen Sie die folgende Laufzeit der Beschreibungsliste (<dt>
) und das Element der Beschreibungsliste (<dl>
) nach dem Begriff und dem Element für Price
direkt innerhalb des abschließenden Tags </dl>
ein:
<dt class="col-sm-2">Rating</dt>
<dd class="col-sm-10">@movie.Rating</dd>
Öffnen Sie die Edit
Komponentendefinitionsdatei (Components/Pages/MoviePages/Edit.razor
).
Fügen Sie den folgenden <div>
-Block zwischen dem <div>
-Block für Price
und der Schaltfläche „Speichern“ (<button>
) ein:
<div class="mb-3">
<label for="rating" class="form-label">Rating:</label>
<InputText id="rating" @bind-Value="Movie.Rating" class="form-control" />
<ValidationMessage For="() => Movie.Rating" class="text-danger" />
</div>
Öffnen Sie die Index
Komponentendefinitionsdatei (Components/Pages/MoviePages/Index.razor
).
Aktualisierung der QuickGrid
-Komponente zur Aufnahme der Filmbewertung. Fügen Sie unmittelbar nach der Spalte für Price
die folgende PropertyColumn<TGridItem,TProp> ein:
<PropertyColumn Property="movie => movie.Rating" />
Aktualisieren Sie die Klasse SeedData
(Data/SeedData.cs
), um einen Standardwert für die neue Rating
-Eigenschaft für Reseeding-Operationen bereitzustellen.
Die folgende Änderung betrifft den Mad Maxnew Movie
-Block. Rating = "R",
wurde dem Block hinzugefügt:
new Movie
{
Title = "Mad Max",
ReleaseDate = DateOnly.Parse("1979-4-12"),
Genre = "Sci-fi (Cyberpunk)",
Price = 2.51M,
+ Rating = "R",
},
Fügen Sie die Eigenschaft Rating
jedem der anderen new Movie
-Blöcke auf die gleiche Weise hinzu. Hier sind die Bewertungen der verbleibenden Mad Max Filme, wenn du die neuen Rating
Zeilen hinzufügst:
- The Road Warrior: R
- Mad Max: Beyond Thunderdome: PG-13
- Mad Max: Fury Road: R
- Furiosa: A Mad Max Saga: R
Speichern Sie alle aktualisierten Dateien.
Starten Sie die App noch nicht. Erstellen Sie die App, um sicherzustellen, dass keine Fehler vorhanden sind.
Wählen Sie Erstellen>Lösung neu erstellen in der Menüleiste.
Verwenden Sie in der Befehlspalette den Befehl .NET: Build
.
Führen Sie in einer Befehlsshell, die im Stammverzeichnis des Projekts geöffnet ist, den folgenden Befehl aus:
dotnet build
Beheben Sie alle Fehler in der Anwendung, die durch das Einfügen des vorangegangenen Markups und Codes entstanden sind, bevor Sie mit dem nächsten Schritt fortfahren.
Aktualisieren der Datenbank
Wenn Sie versuchen würden, die Anwendung jetzt auszuführen, würde die Anwendung mit einer SQL-Ausnahme fehlschlagen, weil die Datenbank keine Rating
-Spalte in ihrer Movie
-Tabelle enthält. Es gibt drei Möglichkeiten, die Diskrepanz zwischen dem Schema der Datenbank und dem Schema des Modells aufzulösen:
- Ändern Sie das Schema der Datenbank so, dass es mit der Modellklasse übereinstimmt. Der Vorteil dieses Ansatzes ist, dass die Daten in der Datenbank erhalten bleiben. Dieser Ansatz kann entweder mit Hilfe von Datenbankwerkzeugen oder durch die Erstellung eines Datenbankänderungsskripts verfolgt werden. Diese Ansätze werden in diesem Tutorial nicht behandelt, können aber in anderen Artikeln erlernt werden. Der Nachteil dieses Ansatzes ist, dass er mehr Zeit in Anspruch nimmt und aufgrund der höheren Komplexität fehleranfälliger ist. Dieses Tutorial verfolgt diesen Ansatz nicht.
- Verwenden Sie EF Core, um die Datenbank automatisch zu löschen und unter Verwendung des neuen Modellklassenschemas neu zu erstellen. Dabei gehen die in der Datenbank gespeicherten Daten verloren. Beim Ausführen der App wird ein erneutes Seeding mit neuen Daten in der Datenbank durchgeführt. Dieser Ansatzermöglicht Ihnen, das Modell und das Datenbankschema schnell gemeinsam weiterzuentwickeln. Verwenden Sie diesen Ansatz nicht für eine Produktionsdatenbank mit Daten, die beibehalten werden müssen. Dieses Tutorial verfolgt diesen Ansatz nicht.
- Verwenden Sie eine EF Core-Migration zum Aktualisieren des Datenbankschemas nach dem Ändern des Modells in der App. Dieser Ansatz ist effizient und behält die Daten der Datenbank bei. Dieses Tutorial verfolgt diesen Ansatz.
Erstellen einer Migration zum Aktualisieren des Datenbankschemas. Die Filmbewertung als Rating
-Spalte wird der Datenbanktabelle Movie
hinzugefügt.
Doppelklicken Sie in Visual Studio im Projektmappen-Explorer auf Verbundene Dienste. Wählen Sie im SQL Server Express LocalDB-Bereich der Dienstabhängigkeiten die Auslassungspunkte (...
) gefolgt von Migration hinzufügen aus.
Geben Sie der Migration einen Migrationsnamen von AddRatingField
, um die Migration zu beschreiben. Warten Sie, bis der Datenbankkontext im Feld DbContext-Klassennamen geladen wird. Wählen Sie Fertig stellen aus, um die Migration zu erstellen. Wenn der Vorgang abgeschlossen ist, wählen Sie Schließen aus.
Die Migration:
- Vergleicht das Modell
Movie
mit dem DatenbanktabellenschemaMovie
. - Erstellt Code, um das Schema der Datenbank in das Modell zu migrieren.
Beim Erstellen der Migration wird beim Aktualisieren der Datenbank nicht automatisch ein Standardwert für die Bewertung bereitgestellt. Sie können jedoch manuell eine Änderung an der Migrationsdatei vornehmen, um einen Standardwert für die Filmbewertung anzuwenden, der hilfreich sein kann, wenn viele Datensätze vorhanden sind, die einen Standardwert erfordern. In diesem Fall wird nur einer der Mad Max-Filme als R bewertet, daher ist ein Standardwert von „R
“ für die Rating
Spalte eine geeignete Wahl. Der einzige Film, der keine R-Bewertung hat, kann später in der ausgeführten App aktualisiert werden.
Überprüfen Sie die Dateien im Migrations
-Ordner des Projekts im Projektmappen-Explorer von Visual Studio. Öffnen Sie die Migrationsdatei, die das Filmbewertungsfeld hinzufügt, das einen Dateinamen von {TIME STAMP}_AddRatingField.cs
hat, wobei der Platzhalter {TIME STAMP}
ein Zeitstempel ist (z. B. 20240530123755_AddRatingField.cs
).
Suchen Sie den AddColumn
-Block, der der Movie
-Tabelle in der Datenbank die Bewertungsspalte hinzufügt. Ändern Sie die letzte Zeile, die einen Standardwert anwendet (defaultValue
). Ändern Sie sie von einer leeren Zeichenfolge (""
) in eine R-Filmbewertung ("R"
):
migrationBuilder.AddColumn<string>(
name: "Rating",
table: "Movie",
type: "nvarchar(max)",
nullable: false,
- defaultValue: "");
+ defaultValue: "R");
Speichern Sie die Migrationsdatei.
Wählen Sie im Bereich SQL Server Express LocalDB der Dienstabhängigkeiten die Auslassungspunkte (...
) erneut aus, gefolgt vom Befehl Datenbank aktualisieren.
Das Dialogfeld Datenbank mit der neuesten Migration wird geöffnet. Warten Sie darauf, dass das Feld DbContext-Klassennamen aktualisiert wird und dass frühere Migrationen geladen werden. Klicken Sie auf die Schaltfläche Fertig stellen. Wählen Sie die Schaltfläche Schließen aus, wenn der Vorgang abgeschlossen ist.
Ändern Sie den einen Film, der nicht als R bewertet ist:
- Führen Sie die App aus.
- Bearbeiten Sie den Film Mad Max: Beyond Thunderdome.
- Aktualisieren Sie die Filmbewertung von
R
zuPG-13
. Speichern Sie die Änderungen.
Hinweis
Eine Alternative zum Ändern der Migrationsdatei besteht darin, die Datensätze in der Datenbank zu löschen und die App erneut auszuführen, um ein erneutes Seeding der Datenbank durchzuführen. Der Seedingcode wurde früher geändert, um Standardwerte zu liefern. Dieser Ansatz ist in Fällen nützlich, in denen die Zuweisung von Standardwerten zu Feldern besser kontrolliert oder schneller mit C#-Code während des Seedings implementiert werden kann. Weitere Informationen finden Sie im Abschnitt Alle Datenbankeinträge löschen und erneutes Seeding für die Datenbank durchführen am Ende dieses Artikels.
Im Terminal (Terminal Menü >Neues Terminal) führen Sie den folgenden Befehl aus, um eine Migration hinzuzufügen. Der Migrationsname (AddRatingField
) ist eine beliebige Beschreibung für die Migration:
dotnet ef migrations add AddRatingField
Mit dem Befehl dotnet-ef migrations
:
- Vergleicht das Modell
Movie
mit dem DatenbanktabellenschemaMovie
. - Erstellt Code, um das Schema der Datenbank in das Modell zu migrieren.
Beim Erstellen der Migration wird beim Aktualisieren der Datenbank nicht automatisch ein Standardwert für die Bewertung bereitgestellt. Sie können jedoch manuell eine kleine Änderung an der Migrationsdatei vornehmen, um einen Standardwert für die Filmbewertung anzuwenden, der hilfreich sein kann, wenn viele Datensätze vorhanden sind, die einen Standardwert erfordern. In diesem Fall wird nur einer der Mad Max-Filme als R bewertet, daher ist ein Standardwert von R
für die Rating
-Spalte geeignet. Der einzige Film, der keine R-Bewertung hat, kann später in der ausgeführten App aktualisiert werden.
Prüfen Sie die Dateien im Ordner Migrations
des Projekts. Öffnen Sie die Migrationsdatei, die das Filmbewertungsfeld hinzufügt, das einen Dateinamen {TIME STAMP}_AddRatingField.cs
hat, wobei der Platzhalter {TIME STAMP}
ein Zeitstempel ist (z. B 20240530123755_AddRatingField.cs
).
Suchen Sie den AddColumn
-Block, der der Movie
-Tabelle in der Datenbank die Bewertungsspalte hinzufügt. Ändern Sie die letzte Zeile, die einen Standardwert anwendet (defaultValue
). Ändern Sie sie von einer leeren Zeichenfolge (""
) in eine R-Filmbewertung ("R"
):
migrationBuilder.AddColumn<string>(
name: "Rating",
table: "Movie",
type: "nvarchar(max)",
nullable: false,
- defaultValue: "");
+ defaultValue: "R");
Speichern Sie die Migrationsdatei.
Führen Sie im Terminal den folgenden Befehl aus, um die Datenbank zu aktualisieren, wodurch die vorhandenen Daten erhalten bleiben, während die Filmbewertungsspalte mit einem Standardwert hinzugefügt wird:
dotnet ef database update
Ändern Sie den einen Film, der nicht als R bewertet ist:
- Führen Sie die App aus.
- Bearbeiten Sie den Film Mad Max: Beyond Thunderdome.
- Aktualisieren Sie die Filmbewertung von
R
zuPG-13
. Speichern Sie die Änderungen.
Hinweis
Eine Alternative zum Ändern der Migrationsdatei besteht darin, die Datensätze in der Datenbank zu löschen und die App erneut auszuführen, um ein erneutes Seeding der Datenbank durchzuführen. Der Seedingcode wurde früher geändert, um Standardwerte zu liefern. Dieser Ansatz ist in Fällen hilfreich, in denen die Zuweisung von Standardwerten zu Feldern besser bzw. schneller mit C#-Code während des Seedings gesteuert wird. Weitere Informationen finden Sie im Abschnitt Alle Datenbankeinträge löschen und erneutes Seeding für die Datenbank durchführen am Ende dieses Artikels.
Führen Sie in einer Befehlsshell, in der der Stammordner des Projekts geöffnet ist, den folgenden Befehl aus, um eine Migration hinzuzufügen. Der Migrationsname (AddRatingField
) ist eine beliebige Beschreibung für die Migration:
dotnet ef migrations add AddRatingField
Mit dem Befehl dotnet-ef migrations
:
- Vergleicht das Modell
Movie
mit dem DatenbanktabellenschemaMovie
. - Erstellt Code, um das Schema der Datenbank in das Modell zu migrieren.
Beim Erstellen der Migration wird beim Aktualisieren der Datenbank nicht automatisch ein Standardwert für die Bewertung bereitgestellt. Sie können jedoch manuell eine kleine Änderung an der Migrationsdatei vornehmen, um einen Standardwert für die Filmbewertung anzuwenden, der hilfreich sein kann, wenn viele Datensätze vorhanden sind, die einen Standardwert erfordern. In diesem Fall wird nur einer der Mad Max-Filme als R bewertet, daher ist ein Standardwert von R
für die Rating
-Spalte geeignet. Der einzige Film, der keine R-Bewertung hat, kann später in der ausgeführten App aktualisiert werden.
Prüfen Sie die Dateien im Ordner Migrations
des Projekts. Öffnen Sie die Migrationsdatei, die das Filmbewertungsfeld hinzufügt, das einen Dateinamen {TIME STAMP}_AddRatingField.cs
hat, wobei der Platzhalter {TIME STAMP}
ein Zeitstempel ist (z. B 20240530123755_AddRatingField.cs
).
Suchen Sie den AddColumn
-Block, der der Movie
-Tabelle in der Datenbank die Bewertungsspalte hinzufügt. Ändern Sie die letzte Zeile, die einen Standardwert anwendet (defaultValue
). Ändern Sie sie von einer leeren Zeichenfolge (""
) in eine R-Filmbewertung ("R"
):
migrationBuilder.AddColumn<string>(
name: "Rating",
table: "Movie",
type: "nvarchar(max)",
nullable: false,
- defaultValue: "");
+ defaultValue: "R");
Speichern Sie die Migrationsdatei.
Führen Sie den folgenden Befehl aus, um die Datenbank zu aktualisieren, wodurch die vorhandenen Daten erhalten bleiben, während die Filmbewertungsspalte mit einem Standardwert hinzugefügt wird:
dotnet ef database update
Ändern Sie den einen Film, der nicht als R bewertet ist:
- Führen Sie die App aus.
- Bearbeiten Sie den Film Mad Max: Beyond Thunderdome.
- Aktualisieren Sie die Filmbewertung von
R
zuPG-13
. Speichern Sie die Änderungen.
Hinweis
Eine Alternative zum Ändern der Migrationsdatei besteht darin, die Datensätze in der Datenbank zu löschen und die App erneut auszuführen, um ein erneutes Seeding der Datenbank durchzuführen. Der Seedingcode wurde früher geändert, um Standardwerte zu liefern. Dieser Ansatz ist in Fällen hilfreich, in denen die Zuweisung von Standardwerten zu Feldern besser bzw. schneller mit C#-Code während des Seedings gesteuert wird. Weitere Informationen finden Sie im Abschnitt Alle Datenbankeinträge löschen und erneutes Seeding für die Datenbank durchführen am Ende dieses Artikels.
Führen Sie die App aus, und überprüfen Sie, ob Sie Filme mit dem neuen Filmbewertungsfeld erstellen, bearbeiten und anzeigen können.
Problembehandlung
Falls die Datenbank beschädigt wird, löschen Sie sie, und verwenden Sie Migrationen, um sie neu zu erstellen:
- Wählen Sie die Datenbank im SQL Server-Objekt-Explorer (SSOX) aus.
- Klicken Sie mit der rechten Maustaste auf die Datenbank, und wählen Sie Löschen aus. Stellen Sie sicher, dass Sie die richtige Datenbank in der Liste auswählen.
- Aktivieren Sie Vorhandene Verbindungen schließen.
- Wählen Sie OK aus.
- Doppelklicken Sie im Projektmappen-Explorer auf Verbundene Dienste. Wählen Sie im Bereich Dienstabhängigkeiten die Auslassungspunkte (
...
) aus, gefolgt von Datenbank aktualisieren im Bereich SQL Server Express LocalDB. Die Aktualisierung der Datenbank führt die vorhandenen Migrationen aus, die die Datenbank neu erstellen.
Löschen der Datenbank. Wenn Ihr Datenbank-Tooling eine Verbindung zur Datenbank hat, schließen Sie zuerst das Tooling oder verwenden Sie die Funktionen des Tools, um die Datenbankverbindung zu schließen und die Datenbank zu löschen. Beachten Sie die Dokumentation Ihres Werkzeugs für weitere Informationen. Stellen Sie sicher, dass Sie die richtige Datenbank in der Liste auswählen.
Führen Sie im Terminal (Terminal Menü >Neues Terminal) den folgenden Befehl aus, um die vorhandenen Migrationen auszuführen, die die Datenbank neu erstellen:
dotnet ef database update
Löschen der Datenbank. Wenn Ihr Datenbank-Tooling eine Verbindung zur Datenbank hat, schließen Sie zuerst das Tooling oder verwenden Sie die Funktionen des Tools, um die Datenbankverbindung zu schließen und die Datenbank zu löschen. Beachten Sie die Dokumentation Ihres Werkzeugs für weitere Informationen. Stellen Sie sicher, dass Sie die richtige Datenbank in der Liste auswählen.
Führen Sie in einer Befehlsshell, die im Stammordner des Projekts geöffnet ist, den folgenden Befehl aus, um die vorhandenen Migrationen auszuführen, die die Datenbank neu erstellen:
dotnet ef database update
Löschen Sie alle Datenbankeinträge und fügen Sie die Datenbank neu ein.
Dieser Abschnitt beschreibt ein alternatives Verfahren zur Aktualisierung der Datenbank mit einem Standardwert für eine neue Modelleigenschaft, ohne die Migrationsdatei zu ändern. Es ist nicht notwendig, die Anweisungen in diesem Abschnitt zu befolgen, wenn Sie alle Schritte im Abschnitt Datenbank aktualisieren weiter oben in diesem Artikel ausgeführt haben.
Um alle Datensätze in der Datenbank zu löschen, verwenden Sie eine der folgenden Methoden:
- Führen Sie die Anwendung aus und verwenden Sie die Links zum Löschen im Browser. Dieser Ansatz ist relativ schnell, wenn nur wenige Datensätze zu löschen sind.
- Löschen Sie in Visual Studio im SQL Server Object Explorer (SSOX) die Datenbankeinträge. Wenn die Datenbanktabelle sichtbar ist, klicken Sie mit der rechten Maustaste auf die Tabelle und wählen Sie Daten anzeigen. Wenn sich die Tabelle öffnet und die Filmdatensätze anzeigt, wählen Sie den ersten Datensatz aus. Halten Sie die Umschalttaste gedrückt und wählen Sie den letzten Eintrag aus, um alle Einträge in der Tabelle auszuwählen. Wenn alle Datensätze ausgewählt sind, drücken Sie die Taste Löschen, um die Datensätze zu löschen. Dieser Ansatz ist relativ schnell, wenn viele Datensätze zu löschen sind.
- Klicken Sie in Visual Studio von SSOX aus mit der rechten Maustaste auf die Datenbank und wählen Sie Neue Abfrage. Eine leere SQL-Datei (
.sql
) wird geöffnet. Fügen Sie den folgenden Befehl in die Datei ein:DELETE FROM dbo.Movie;
. Wählen Sie das grüne Dreieck Ausführen, um die Abfrage auszuführen oder drücken Sie Strg+Umschalt+E auf der Tastatur. Auf der Registerkarte Meldung meldet SSOX die Anzahl der von der Abfrage betroffenen, in diesem Fall gelöschten, Zeilen. Wenn Sie möchten, können Sie die Abfrage zur späteren Verwendung speichern. Andernfalls schließen Sie die Datei, ohne sie zu speichern. Dieser Ansatz ist besonders nützlich, wenn die Tabelle groß ist und Hunderte bis Tausende von Datensätzen enthält.
- Führen Sie die Anwendung aus und verwenden Sie die Links zum Löschen im Browser. Dieser Ansatz ist relativ schnell, wenn nur wenige Datensätze zu löschen sind.
- Löschen Sie die Datenbankdatensätze mithilfe von Datenbanktools†. In den meisten Datenbanktools, die eine direkte Bearbeitung von Daten ermöglichen, öffnen Sie die Datenansicht der Datenbanktabelle in den Tools. Wenn sich die Tabelle öffnet und die Filmdatensätze anzeigt, wählen Sie den ersten Datensatz aus. Halten Sie die Umschalttaste gedrückt, und wählen Sie den letzten Datensatz aus, um alle Datensätze in der Datenbank auszuwählen. Wenn alle Datensätze ausgewählt sind, drücken Sie die Taste Löschen, um die Datensätze zu löschen. Je nach verwendeten Datenbanktools müssen Sie diese Anweisungen möglicherweise anpassen. Weitere Informationen finden Sie in der Dokumentation des Tools. Dieser Ansatz ist relativ schnell, wenn viele Datensätze zu löschen sind.
- Führen Sie mithilfe von Datenbanktools† eine SQL-Abfrage für die Filmtabelle aus, um die Datensätze der Tabelle zu löschen. Der SQL-Befehl lautet
DELETE FROM dbo.Movie;
. Wenn Sie möchten, können Sie die Abfrage zur späteren Verwendung speichern. Andernfalls schließen Sie die Datei, ohne sie zu speichern. In der Dokumentation des Tools finden Sie die genauen Schritte. Dieser Ansatz ist besonders dann nützlich, wenn die Tabelle groß ist und Hunderte bis Tausende von Datensätzen enthält.
†Datenbanktools: Es gibt viele kostenlose und einzelhandelsbasierte Datenbanktools auf dem offenen Markt, die mit SQL-Datenbanken funktionieren. Nutzen Sie Internetressourcen, um eine für Ihre Datenbank und Plattform geeignete zu finden.
- Führen Sie die App aus, und verwenden Sie die Löschlinks im Browser. Dieser Ansatz ist relativ schnell, wenn nur wenige Datensätze zu löschen sind.
- Löschen Sie die Datenbankdatensätze mithilfe von Datenbanktools†. In den meisten Datenbanktools, die eine direkte Bearbeitung von Daten ermöglichen, öffnen Sie die Datenansicht der Datenbanktabelle in den Tools. Wenn sich die Tabelle öffnet und die Filmdatensätze anzeigt, wählen Sie den ersten Datensatz aus. Halten Sie die Umschalttaste gedrückt, und wählen Sie den letzten Datensatz aus, um alle Datensätze in der Datenbank auszuwählen. Wenn alle Datensätze ausgewählt sind, drücken Sie die Taste Löschen, um die Datensätze zu löschen. Je nach verwendeten Datenbanktools müssen Sie diese Anweisungen möglicherweise anpassen. Weitere Informationen finden Sie in der Dokumentation des Tools. Dieser Ansatz ist relativ schnell, wenn viele Datensätze zu löschen sind.
- Führen Sie mithilfe von Datenbanktools† eine SQL-Abfrage für die Filmtabelle aus, um die Datensätze der Tabelle zu löschen. Der SQL-Befehl lautet
DELETE FROM dbo.Movie;
. Wenn Sie möchten, können Sie die Abfrage zur späteren Verwendung speichern. Andernfalls schließen Sie die Datei, ohne sie zu speichern. In der Dokumentation des Tools finden Sie die genauen Schritte. Dieser Ansatz ist besonders dann nützlich, wenn die Tabelle groß ist und Hunderte bis Tausende von Datensätzen enthält.
†Datenbanktools: Es gibt viele kostenlose und einzelhandelsbasierte Datenbanktools auf dem offenen Markt, die mit SQL-Datenbanken funktionieren. Nutzen Sie Internetressourcen, um eine für Ihre Datenbank und Plattform geeignete zu finden.
Achtung
Gehen Sie beim Löschen von Datensätzen aus einer Datenbank äußerst vorsichtig vor. Das Löschen von Datensätzen ist dauerhaft, wenn keine zusätzlichen Schritte zur Entschärfung von Datenverlust ergriffen werden. Produktionsdatenbanken stellen häufig automatische Sicherungskopien von Daten bereit, entweder sofort, wenn die Datenbank geändert wird, oder regelmäßig, einschließlich Off-Site-Kopien und permanenter physischer Speicherung von Daten.
Führen Sie nach dem Löschen aller Datensätze die App aus. Der Initialisierer führt für die Datenbank ein erneutes Seeding aus und fügt je nach Seedingcode die entsprechenden Filmbewertungen für das Rating
-Feld ein.
Problembehandlung mit dem fertiggestellten Beispiel
Wenn Sie beim Verfolgen des Tutorials auf ein Problem stoßen, das Sie anhand des Textes nicht lösen können, vergleichen Sie Ihren Code mit dem fertigen Projekt im Blazor-Beispiele-Repository:
Blazor GitHub-Beispielrepository (dotnet/blazor-samples
)
Wählen Sie den Ordner mit der neuesten Version. Der Beispielordner für das Projekt dieses Tutorials trägt den Namen BlazorWebAppMovies
.
Zusätzliche Ressourcen
Rechtliche Hinweise
Mad Max, The Road Warrior, Mad Max: Beyond Thunderdome, Mad Max: Fury Road und Furiosa: A Mad Max Saga sind Marken und Urheberrechte von Warner Bros. Entertainment.