Heim > Datenbank > MySQL-Tutorial > Kann LINQ direkte SQL-Updates durchführen, ohne zuerst Daten auszuwählen?

Kann LINQ direkte SQL-Updates durchführen, ohne zuerst Daten auszuwählen?

Patricia Arquette
Freigeben: 2024-12-25 05:26:17
Original
921 Leute haben es durchsucht

Can LINQ Perform Direct SQL Updates Without Selecting Data First?

Direkte Aktualisierungen mit LINQ ohne Select

Wenn Sie direkt mit SQL arbeiten, können Sie Aktualisierungsbefehle mit Bedingungen generieren, ohne eine Select-Anweisung auszuführen. In LINQ besteht das übliche Muster darin, Entitäten auszuwählen, sie zu ändern und die Änderungen zu übermitteln. Ist es jedoch möglich, eine direkte Aktualisierung mithilfe von LINQ und verzögerter Ausführung durchzuführen, ohne Daten an den Client zu übertragen?

Die bereitgestellte LINQ-Abfrage versucht, eine direkte Aktualisierung durchzuführen, enthält jedoch eine Auswahlklausel. Während LINQ über alle Informationen verfügt, die zum Generieren eines Aktualisierungsbefehls erforderlich sind, gibt es in LINQ kein „set“-Schlüsselwortäquivalent.

Lösung:

So erstellen Sie direkte Aktualisierungsanweisungen mit LINQ-to-SQL:

  1. Erstellen Sie ein Objekt und legen Sie seinen Schlüssel fest Eigenschaften:
Foo foo = new Foo { FooId = fooId };
Nach dem Login kopieren
  1. Hängen Sie das Objekt an den Kontext an:
context.Foos.Attach(foo);
Nach dem Login kopieren
  1. Legen Sie die Eigenschaften fest, die Sie aktualisieren möchten:
foo.Name = "test";
Nach dem Login kopieren
  1. Senden Sie die Änderungen:
context.SubmitChanges();
Nach dem Login kopieren

Hinweis:

  • Stellen Sie sicher, dass die UpdateCheck-Eigenschaft für alle Eigenschaften in Ihrer DBML auf „Nie“ eingestellt ist.
  • Um eine Eigenschaft auf Null zu setzen, initialisieren Sie das Objekt mit einem Wert ungleich Null (z. B. Name="###").
  • Um während der Aktualisierung nach einem Zeitstempel zu suchen, setzen Sie die UpdateCheck-Eigenschaft der Modified-Eigenschaft in Ihrer Dbml auf „Immer.“

Das obige ist der detaillierte Inhalt vonKann LINQ direkte SQL-Updates durchführen, ohne zuerst Daten auszuwählen?. 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