Detaillierte Erläuterung des Vergleichs der Groß- und Kleinschreibung in LINQ to Entities
Die folgende LINQ to Entities-Abfrage:
Thingies.First(t => t.Name == "ThingamaBob");
Da LINQ to Entities Lambda-Ausdrücke in SQL-Anweisungen konvertiert, werden keine Vergleiche durchgeführt, bei denen die Groß-/Kleinschreibung beachtet wird. Bei der von SQL Server standardmäßig verwendeten Sortierung SQL_Latin1_General_CP1_CI_AS wird die Groß-/Kleinschreibung nicht beachtet.
Serverseitige Lösung
Um Vergleiche unter Beachtung der Groß- und Kleinschreibung zu ermöglichen, verwenden Sie den folgenden SQL-Befehl, um die Sortierung der Spalte „Name“ in der Tabelle „Thingies“ in COLLATE Latin1_General_CS_AS zu ändern:
ALTER TABLE Thingies ALTER COLUMN Name VARCHAR(25) COLLATE Latin1_General_CS_AS
Kundenlösung
Alternativ können Sie LINQ to Objects verwenden, um einen Vergleich unter Berücksichtigung der Groß- und Kleinschreibung durchzuführen, dies ist jedoch weniger effizient:
Thingies.Where(t => t.Name == "ThingamaBob") .AsEnumerable() .First(t => t.Name == "ThingamaBob");
Das obige ist der detaillierte Inhalt vonWie führt man mit LINQ to Entities Vergleiche unter Beachtung der Groß- und Kleinschreibung durch?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!