Page 1 of 1

Entity Framework Core Ersetzen Sie 0 durch Null Wie kann ich dieses Verhalten verhindern

Posted: 20 Aug 2025, 02:33
by Anonymous
Wenn ich 0 an die hochgeladene Eigenschaft überlasse und dann versuche, Entität in der Datenbank zu speichern, erhalte ich unter dem Fehler. Aber gut arbeiten, wenn ich PSAs 1. < /P>

Code: Select all

Cannot insert the value NULL into column 'Uploaded', table 'ClientDocumentRequest'; column does not allow nulls. INSERT fails.
< /code>
Hier ist die Konfiguration, die ich festgelegt habe. < /p>
builder.Property(c => c.Uploaded).IsRequired().HasDefaultValue(0);
< /code>
Dies hat mithilfe der obigen Konfiguration < /pbr /> durch den Entity Framework Core in Migration generiert. < /pbr />Uploaded = table.Column(type: "int", nullable: false, defaultValue: 0)
< /code>
Das bekomme ich, wenn ich unter der Abfrage < /p>
reite    SELECT COLUMN_NAME, IS_NULLABLE, COLUMN_DEFAULT, DATA_TYPE
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = 'ClientDocumentRequest' AND COLUMN_NAME = 'Uploaded'

column_default sollte 0 sein, aber es ist Null. Es scheint, dass Konfiguration nicht in der Datenbank angewendet wird, die ich in der Konfigurationsdatei festgelegt habe. Wie kann ich das festlegen, wenn dies das Problem lösen wird? Wenn ich neben der Zeit neu clientDocumentRequest in der Datenbank mit SQL -Abfrage hinzufüge und 0 an den Hochladen von Datensatz ist, speichert ich. Es scheint, dass SQL 0 durch NULL ersetzt. Ich bin mir nicht sicher, wie ich EF Core informieren kann, dass ich absichtlich 0 bestehe und dies nicht durch Null ersetzen kann. Jede Hilfe wäre geschätzt. Danke