Wenn man mit einer Datenbank arbeitet, ist ein Null*
-Typ für die meisten Szenarien nützlich, da man normalerweise keinen "Null" -Wert durchläuft, sondern die NOT NULL-Einschränkungen usw., um dich daran zu erinnern Sie haben nicht alle erforderlichen Daten eingegeben.
Sie erstellen also eine Struktur wie die folgende:
%Vor% Das ist großartig, aber jetzt können Sie keinen direkten Zugang zu den Eigenschaften bekommen und müssen Role.Id.Value
sowohl zum Abrufen als auch zum Setzen verwenden, das wird in einer großen App ziemlich alt, wenn Sie jeden Schritt extra haben müssen Zeit, die Sie auf die Eigenschaften zugreifen möchten.
Es wäre schön, wenn Sie zB direkt zuordnen könnten. Role.Code = "Fsfs"
und in der Lage sein, etwas wie Role.Code.IsNull
zu tun, wenn Sie an der Null-Überprüfung interessiert sind. Ist so etwas möglich?
Behalten Sie App- und Datenbankcode getrennt .
%Vor%Modellieren Sie die Datenbank.
%Vor%Schreiben Sie einmal Code, um zwischen Modell- und Datenbankzeile zu konvertieren.
%Vor%Ihr Schema ist vom App-Modell entkoppelt. Sie können Strukturen wie Benutzerkontaktdetails beim Speichern oder Laden abflachen.
%Vor%Es ist flexibel. Sie können sogar Join-Zeilen ohne Zwischenstrukturen scannen.
%Vor%Tags und Links go