MySql wird in ASP.NET Core verwendet. Wenn der Feldtyp varchar
ist, wird er beim Einfügen oder Aktualisieren von Daten automatisch gekürzt (255 Zeichen).
Der Grund für das Problem ist, dass das Programmpaket MySql.Data.EntityFrameworkCore
verwendet wird (die Version, die ich verwende, ist 7.0.7-m6
). Wenn Sie die Version aktualisieren, liegt das Problem möglicherweise nicht vor geschehen.
Lösung: Ändern Sie den Typ aller MySql-Felder mit varchar
(Feldlänge größer als 255) in text
(keine Länge erforderlich, Standard ist 0).
Dann wird die EF Core-Zuordnungskonfiguration wie folgt geändert:
protected override void OnModelCreating(ModelBuilder modelBuilder) {var entity = modelBuilder.Entity<Entity>(); entity.Property(p => p.Body).HasColumnType("text"); //add HasColumnType("text")base.OnModelCreating(modelBuilder); }
Referenz:
.Net Core Entity Framework MySQL – Zeichenfolgenfelder speichern nur 255 Symbole
MySql-Connector für .Net Core kürzt Text auf 255 Zeichen
Das obige ist der detaillierte Inhalt vonBeispiel-Tutorial zum Lösen von ASP.NET Core MySql Varchar String Interception. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!