IMPORTANT: MAJOR BREAKING CHANGE COMING SOON

ef core plus: ArgumentNullException: Wert darf nicht null sein Parametername: Eigenschaft

entity-framework-core entity-framework-plus

Frage

Mit ef core plus versuche ich, eine Reihe von Zeilen in meinem Modell zu aktualisieren:

await _context.Set<Critique>()
            .Include(c => c.User)
            .Where(c => c.Closed && c.User.Id == user.Id)
            .UpdateAsync(c => new Critique() { User = deletedUser });

Hier bekomme ich folgende Ausnahme:

ArgumentNullException: Wert darf nicht null sein. Parametername: Eigenschaft Npgsql.EntityFrameworkCore.PostgreSQL.Utilities.Check.NotNull (T-Wert, Zeichenfolge parameterName) in Check.cs, Zeile 21

TargetInvocationException: Das Ziel eines Aufrufs hat eine Ausnahme ausgelöst. System.RuntimeMethodHandle.InvokeMethod (Argument für Object-Ziele, Object [], Signatur-Sig, Bool-Konstruktor, Bool-WrapException)

Wenn ich die Daten einfach mit ef core lade, wird die 1 erwartete Zeile geladen

var test = await _context.Set<Critique>()
            .Where(c => c.Closed && c.User.Id == user.Id)
            .ToArrayAsync();

Das Datenbankmodell ist nichts Besonderes, aber zu groß, um es hier zu posten. Ich benutze [Required] ausgiebig und es gibt viele One-to-Many-Beziehungen.

(Übrigens, user.Id ist nicht null und verfügbar, und deletedUser ist auch im Code und in der Datenbank verfügbar.)

Wie ist dieser Fehler zu interpretieren? Was mache ich falsch?

Danke für Ihre Hilfe!

Akzeptierte Antwort

Unsere Bibliothek kann den Wert aktualisieren, der Wert kann jedoch derzeit nicht mithilfe der Navigationseigenschaft aktualisiert werden

Das geht nicht

.UpdateAsync(c => new Critique() { User = deletedUser });

Dies hätte jedoch funktioniert, wenn Sie die Immobilie hätten

.UpdateAsync(c => new Critique() { UserID = deletedUserID });

Außerdem ist es nicht .Include(c => c.User) , .Include(c => c.User) da Sie diese Informationen nicht abrufen.



Related

Lizenziert unter: CC-BY-SA with attribution
Nicht verbunden mit Stack Overflow
Ist diese KB legal? Ja, lerne warum
Lizenziert unter: CC-BY-SA with attribution
Nicht verbunden mit Stack Overflow
Ist diese KB legal? Ja, lerne warum