Question

J'utilise les deux IBatis.NET et Spring.NET sur un projet au travail et je voudrais savoir si je peux tirer parti de deux / soit des cadres pour atteindre « la mise en cache par demande » sur tous les appels dans mon DAL couche. En d'autres termes, chaque fois qu'une requête HTTP est servi par ASP.NET, je voudrais tout d'abord appel dans une méthode DAL pour frapper la DB à distance, mais tous les appels par la suite à gonfler à partir du cache.

Je l'ai vu quelques articles décrire une façon de y parvenir en utilisant HttpContext.Current, mais je ne peux pas l'estomac l'idée de polluer ma couche DAL avec des références System.Web. Je voudrais également tirer parti de ces cadres si au possible, je ne suis pas friand de réinventer la roue.

Était-ce utile?

La solution

Je ne suis pas expert sur IBatis.NET et l'intégration avec Spring.NET très probablement plus merci manque mais va ici ..

Je voudrais créer une implémentation ICACHE personnalisée qui utilise HttpContext.Current.Items. Ensuite, je voudrais faire des objets de la couche DAL proxied avec Spring.NET AOP (ils sont derrière des interfaces, sont-ils pas?). Ensuite, il est juste une question d'appliquer les conseils de cache à l'aide du cadre AOP.

Vous devriez être en mesure de le faire en suivant la documentation Spring.NET à propos de la mise en cache des AOP et mettre en œuvre la ICACHE en utilisant l'implémentation de cache ASP.NET de Spring.NET comme point de départ.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top