Ich habe eine MVC3-Anwendung mit EF Database First. Die Anwendung zeichnet verschiedene Ereignisse im Zusammenhang mit einem Auto auf. Die Ereignisse dürfen sich nicht überschneiden. Die Ereignisse werden aus einem Standardsatz von CRUD-Bildschirmen auf der Grundlage von ViewModels erstellt und hinzugefügt. Sie werden dann dem Kontext über einen Dienst hinzugefügt, der sie einfach über das Ereignis-Repository einfügt.
Die Menschen schaffen Mietzeiten für ein Auto. Daher muss ich verhindern, dass sich die Mietzeiträume des Autos überschneiden, da nur eine Person ein Auto auf einmal mieten kann.
Wie lässt sich am besten sicherstellen, dass keine Ereignisse erstellt werden können, die sich überschneiden? Wo lässt sich diese Logik am besten unterbringen? Ich nehme an, in der Domänenschicht, so dass die Kernlogik wiederverwendet werden kann. Gehört dies in das Repository oder ist es etwas, das in der Entität selbst implementiert werden sollte? Da es sich um ein Mehrbenutzersystem handelt, muss ich verhindern, dass zwei Personen gleichzeitig Ereignisse hinzufügen, was zu Überschneidungsproblemen führt.
Jeder Rat ist willkommen.
Danke
Graeme