Ich habe eine Tabelle in der Datenbank mit einem Primärschlüssel sagen emp_pk
. Jetzt benutze ich LINQ und versuche einige Operationen auszuführen. Wenn ich einige Eigenschaften und Aufruf zu ändern,SubmitChanges fügt intern alle Felder als Where-Klausel hinzu, wie man es los wird
context.SubmitChanges();
idealerweise die where-Klausel sollte where emp_pk = value
enthalten.
Aber wenn ich die Abfrage von SQL-Profiler überprüfen, sehe ich viele Bedingungen in WHERE-Klausel, die, glaube ich, von LINQ-Engine generiert werden. Dies verursacht ein großes Leistungsproblem.
Kann mir bitte jemand in diesem Fall helfen, die Abfrage zu optimieren?
Dies verursacht ein großes Leistungsproblem: wirklich ?? Warum oder wird das Leistungsproblem von linq-2-sql erstellt, das viele Datensätze nacheinander aktualisiert? – Pleun
10k in sich ist kein Problem. Die Frage ist, wie viele Sie gleichzeitig aktualisieren. Wenn Sie große Mengen von Datensätzen gleichzeitig aktualisieren, ist Linq2Sql performancewise nicht die beste Wahl – Pleun