Heim > Datenbank > MySQL-Tutorial > Warum erstellt Entity Framework eine Pluraltabelle, während meine Ansicht eine Singulartabelle erwartet?

Warum erstellt Entity Framework eine Pluraltabelle, während meine Ansicht eine Singulartabelle erwartet?

Barbara Streisand
Freigeben: 2024-10-29 10:29:30
Original
495 Leute haben es durchsucht

 Why Does Entity Framework Create a Plural Table While My View Expects a Singular Table?

Entity Framework erstellt eine Pluraltabelle, während die Ansicht eine einzelne Tabelle erwartet

Im bereitgestellten Code erstellt Entity Framework mehrere Tabellen, obwohl die Ansicht erfordert eine einzelne Tabelle. Diese Diskrepanz entsteht aufgrund eines Unterschieds in den Namen der von Entity Framework erstellten Tabelle und der von der Ansicht referenzierten Tabelle.

Die von Entity Framework erstellte Tabelle folgt der Konvention, den Namen der Entität zu pluralisieren. Daher wird in diesem Fall eine Tabelle mit dem Namen „Votes“ generiert. Die Ansicht erwartet jedoch eine Tabelle mit dem Namen „Vote“. Der Hauptgrund dafür ist die Unterstützung von EF durch den MySQL .net Connector. Das Entfernen der Pluralisierung und das Vornehmen anderer Anpassungen sollte das Problem beheben.

Erstens enthält die Methode „ApplicationStart“ einen kleinen Fehler:

// Database.SetInitializer(new DropCreateDatabaseAlways<myDB>());
Database.SetInitializer(new myDBInitializer());
Nach dem Login kopieren

Darüber hinaus ist die Basisimplementierung von „OnModelCreating“ deaktiviert erforderlich:

protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
    // modelBuilder.Entity<Vote>().ToTable("Votes")
    modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
}
Nach dem Login kopieren

Es wurde auch vermutet, dass der MySQL .net Connector EF daran hindert, Datenbanken zu erstellen, was die Erstellung einer leeren Datenbank im Voraus erforderlich macht. Diese Einschränkung gilt im aktuellen Szenario nicht für die Connector-Versionen 6.4.4. Das Erstellen der Datenbank ist vorzuziehen, wenn der Benutzer über die erforderlichen Berechtigungen verfügt.

Diese Anpassungen sollten die Diskrepanz zwischen dem von Entity Framework erstellten Plural-Tabellennamen und dem von der Ansicht erwarteten Singular-Tabellennamen beheben.

Das obige ist der detaillierte Inhalt vonWarum erstellt Entity Framework eine Pluraltabelle, während meine Ansicht eine Singulartabelle erwartet?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage