Frage

Ich habe folgendes Datenbankmodell:

[User]
Id
Name

[Role]
Id
Name

[UserRole]
UserId
RoleId
IsActive 

Und ich mag eine nette Art und Weise erstellen, um diese Beziehung zu vertreten und die Eigenschaft, dass, ohne eine Klasse in es mit Objekten Userrole Tabelle darzustellen.

Irgendwelche Ideen?

Vielen Dank!

War es hilfreich?

Lösung

Haben Sie einfach ein Attribut eines Benutzerobjekt namens „Rollen“, die eine Liste von Rollen enthält.

Sie können auch zwei Attribute, ein für eine Liste der aktiven Rollen eines für die inaktiven, Sie benötigen, falls die aktiven Flag verwendet, das Objekt zu verwalten.

Sie können aber auch eine Rolle Objekt haben Attribut Auflistung die Benutzer in dieser Rolle (entweder anstelle oder zusätzlich zu der Rolle Attribute in Benutzerobjekt.) - wieder möglicherweise mit „inaktiv“ copy

Andere Tipps

Erstellen Sie eine Ansicht, die Userrole und Rollen verbindet:

[VUserRole]
UserId
RoleId
RoleDescription
IsActive

und das Modell mit einem Userrole Klasse. Dann Benutzer hat eine Sammlung von Userrole und IsActive ist ein Attribut Userrole.

Beachten Sie, dass diese Lösung spielt nicht gut mit den meist (jeder?) Persistenz-Framework und der „richtige“ Weg, es zu tun ist, die Join-Tabelle zugeordnet werden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top