Zwischenspeichern von Datenobjekten bei Verwendung von Repository / Service Pattern und MVC

Ich habe eine MVC-basierte Site, die ein Repository / Service-Muster für den Datenzugriff verwendet. Die Dienste sind so geschrieben, dass sie in den meisten Anwendungen (Konsole, Winform und Web) verwendet werden können. Derzeit kommunizieren die Controller direkt mit den Diensten. Dies hat die Fähigkeit, eine ordnungsgemäße Zwischenspeicherung anzuwenden, eingeschränkt.

Ich sehe meine Optionen wie folgt:

Schreiben Sie einen Wrapper für die Web-App, der den IWhatEverService implementiert, der das Caching ausführt.Wenden Sie die Zwischenspeicherung in jedem Controller an, indem Sie die ViewData für jede Aktion zwischenspeichern.Machen Sie sich keine Gedanken über das Zwischenspeichern von Daten und implementieren Sie OutputCaching für jede Aktion.

Ich kann die Vor- und Nachteile von jedem erkennen. Was ist / sollte die beste Vorgehensweise für das Caching mit Repository / Service sein?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage