Laden...

[gelöst] MVC: Methode zur Ermittlung bestimmter Datensätze kapseln

Erstellt von Levion vor 11 Jahren Letzter Beitrag vor 11 Jahren 834 Views
Levion Themenstarter:in
114 Beiträge seit 2009
vor 11 Jahren
[gelöst] MVC: Methode zur Ermittlung bestimmter Datensätze kapseln

Hi,

ich habe mal eine etwas dogmatische Frage zum Thema MVC.

Sagen wir ich habe eine Model des Typs Mitarbeiter. An dem Mitarbeiter gibt es natürlich diverse Attribute. Der Zugriff auf die Datenbasis erfolgt wie vorgesehen mit dem DBContext-Objekt.

Für interne Zwecke muss ich in meiner Anwendung öfter mal den Chef der Mitarbeiter ermittln. Dieser ist auch vom Typ Mitarbeiter, hat aber das Flag Chef=true. Ich brauche als eine Methode GetChef().

Wo sollte man das jetzt am implementieren? Ich denke an eine statische Methode am Model, die mit dann ein entsprechendes Mitarbeiter Objekt zurückgibt. Allerdings müsste ich dort auf den DBContext gehen. Das kann nicht im Sinne des Erfinders sein, oder?

Im Controller wäre auch denkbar, aber ich brauche die Methode nach außen nicht. Einfach eine private Methode davon machen?

Irgendwie scheint mir ein Layer zu fehlen 😦
Die Literatur (die ich habe) geht leider nicht über den CD-Shop hinaus 😉

Gruß

F
10.010 Beiträge seit 2004
vor 11 Jahren

statische Methode am Model

Ganz bestimmt nicht.

Irgendwie scheint mir ein Layer zu fehlen 😦

Ja, nennt sich repository.

Levion Themenstarter:in
114 Beiträge seit 2009
vor 11 Jahren
16.824 Beiträge seit 2008
vor 11 Jahren

Zu diesem Link will ich gleich was hinzufügen:

* Verwende echte ViewModels statt ViewBag und ViewData.
* Verwende ein generisches Repository [gelöst][MVC3] Fragen zur Nutzung mit Entity Framework4
* Dispose würde ich NICHT in das Repository übernehme, da Du sonst für jedes Repository einen eigenen Context brauchst und das dann ein ständiges attachen / detachen der Entities zur Folge hat.
-> Dispose ausschließlich auf das wirkliche Context-Objekt!
* ModelState weg lassen und lieber eine eigene Validierung implementieren, zB über IValidatableObject ASP MVC 3: Invalid Operation Exception beim Einsatz von Data Annotations für Modelvalidierung (Für ViewModels UND Entities!)