Wie aktualisiere ich eine SQL-Zeile eine ID mit LINQ to SQL gegeben?
-
06-07-2019 - |
Frage
Vor diesem Schema:
Fruits
- FruitID INT PK
- FruitName NVARCHAR(30)
- FruitStatusID INT NULL FK: Statuses
Statuses
- StatusID INT PK
- StatusName NVARCHAR(30)
Wenn ich eine FruitID
in der Hand haben (nur ein int, kein Obst Objekt), wie aktualisiere ich die FruitName
und nullen FruitStatusID
, ohne die Frucht Objekt aus der Datenbank laden zuerst?
Hinweis: dieser Lösung bringt mich ziemlich weit, aber ich kann nicht herausfinden, wie man eine FK Spalte auf null aus.
Antworten in C # oder VB, danke!
Lösung
Das funktioniert aber scheint unnötig kompliziert:
''//initialize the values I'm going to null out to something
Dim Tag As Data_Tag = New Data_Tag() With {
.Data_Tag_ID = DataTagID,
.Last_Error_DateTime = New DateTime(),
.Last_Error_Message = "",
.Last_Error_Severity_Type_ID = -1 }
''//start change tracking
DB.Data_Tags.Attach(Tag)
''//record changes to these properties (must be initialized above)
Tag.Last_Error_DateTime = Nothing
Tag.Last_Error_Message = Nothing
Tag.Last_Error_Severity_Type_ID = Nothing
DB.SubmitChanges()
Sicher gibt es einen besseren Weg!
(Anmerkung: die seltsame Kommentar Syntax nur für den Code highliger ist - mag es nicht VB-style Kommentare)
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow