Ich habe eine Eigenschaft Name
in Einheit UnitType
auf Unique für SQLite mit EntityFrameworkCore 2.0 festgelegt.SQLite mit EntityFrameworkCore eindeutige Spalte ist case sensitive. Suche ist auch case sensitive
modelBuilder.Entity<UnitType>().HasIndex(t => t.Name).IsUnique();
Aber es verhält sich wie Groß-und Kleinschreibung. Bedeutet, es betrachtet Gram
und gram
als zwei verschiedene Werte und fügt sie ein. Das ist eindeutig nicht zu erwarten, nachdem ich viel Zeit mit MS-SQL verbracht habe.
Auch ein weiteres Problem ist beim Filtern von Daten für diese Spalte. Auch das ist Groß-und Kleinschreibung.
db.Units.Where(w => w.Name.Contains(SearchText));
Wie es Groß- und Kleinschreibung machen?
Für die Suche nach Groß-/Kleinschreibung in SQLite finden Sie auch diese Frage: https://stackoverflow.com/questions/15480319/case-sensitive-and-insensitive-like-in-sqlite –