2010-11-25 34 views
0

J'ai une table de taxes dans la base de données qui change peut-être une fois par an. notre application asp.net a des calculs qui interrogent la base de données pour les taxes en fonction de la province/état du client beaucoup. Je voudrais éviter ces allers-retours. Est-ce que je peux utiliser la mise en cache avec Entity Framework 4? Donc, je veux que l'entité soit basée sur la table des taxes dans mon edmx, mais quand j'exécute des requêtes LINQ, je ne veux pas qu'elle se rende à la base de données à moins que le cache ait expiré. Comment pourrais-je accomplir cela?mise en cache asp.net et ado.net

Je n'ai pas travaillé avec la mise en cache des données asp.net avant, donc quelques détails sur le concept serait très apprécié. J'ai lu la documentation de msdn sur la mise en cache de données d'application, mais je me demande comment faire fonctionner cela avec EF4 d'une manière élégante.

Répondre

0

Vous pouvez utiliser la mise en cache de base de fichiers pour cela. Comme vous devez créer un déclencheur sur la table qui va modifier les fichiers sur un emplacement spécifique, puis vous pouvez ajouter la mise en cache sur le fichier à partir du code asp.net. Donc, jusqu'à ce que et à moins que des changements se produisent dans la table, vous devez récupérer les données du cache si le fichier change, alors il va valider le cache et les données seront extraites de la base de données.

Ou

Vous pouvez SQL Cache fonction si vous dépendance utilisez SQLServe comme back-end.

Voici les quelques liens qui pourraient vous aider.

http://www.15seconds.com/issue/031229.htm

http://www.c-sharpcorner.com/uploadfile/vishnuprasad2005/implementingcachinginasp.net11302005072210am/implementingcachinginasp.net.aspx

voici un soutien pour la mise en cache dans entityframework

http://blogs.msdn.com/b/efdesign/archive/2008/07/09/transparent-caching-support-in-the-entity-framework.aspx

http://www.andrewdothay.net/blog/2009/01/28/LINQAndTheSqlCacheDependency.aspx

+0

connaissez-vous si Entity Framework 4.0 prend en charge toute sorte de mise en cache de la boîte? les 2 derniers liens semblent datés. – Riz

+0

Non, je ne pense pas. Si vous voulez utiliser out of box vous pouvez utiliser telerik open access orm mais c'est une licence payante. –

+0

Je pense que la mise en cache de base de fichier fonctionnera dans presque tous les scénarios. –