Wenige unveränderliche Objekte in eine relationale Datenbank bestehenC#

Ein Treffpunkt für C#-Programmierer
Anonymous
 Wenige unveränderliche Objekte in eine relationale Datenbank bestehen

Post by Anonymous »

Ich habe bestimmte objektorientierte Experten gesehen, dass Domänenobjekte (POCOs) unveränderlich sein sollten. rekonstruieren ich das Domänenobjekt basierend auf Daten in einer Datenbank?class User
{
private string _emailAddress;

public User(string emailAddress, string password)
{
// ... generate hash & seed
_emailAddress = emailAddress;
}

public string PasswordHash { get; private set; }

public string PasswordSeed { get; private set; }

public bool ValidatePassword(string password)
{
// validate it against the stored hash
}
}
< /code>

Im obigen Beispiel möchte ich den Status des Objekts speichern und später abrufen. Dies bedeutet, dass das Passworthash, das Passwort und die E -Mail -DREIDDRESS gespeichert werden. Es gibt keine Konstruktorparameter, an die sie übergeben werden können, und ich kann das Objekt nicht einmal ohne sie konstruieren, da 'Passwort' geliefert werden muss und ich nicht weiß, was das ursprüngliche Passwort war. Ich kann die Eigenschaften von 'PasswordHash' oder 'passwordsateed' nicht festlegen, da sie 'private Set' sind. Lesen/Schreiben. Aber wo ist meine Kapselung und Unveränderlichkeit? Ich wollte einen bestimmten Workflow in meine Domänenobjekte durchsetzen. Kein Konzept der Kapselung. Jede Spalte in einer Tabelle ist 'öffentlich' und jeder Wert ist 'veränderlich'. Oder gibt es eine bekannte Strategie, um sich damit umzugehen, von denen ich noch nichts weiß?

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post