J'ai une application Web. Il fait une tonne de données lues sur de petites tables et quelques écritures. Je veux mettre en cache des tables entières de données et interroger les données mises en cache. Je remplace la méthode Table <T>
() du contexte afin que nous puissions servir le cache au lieu de données en direct. Fonctionne très bien pour les insertions et prend également en charge l'accès aux données de test unitaire. Impressionnant.Mise en cache des données Linq2Sql
Nous avons donc commencé à utiliser des données de cache et découvert que les mises à jour et les suppressions ne fonctionnaient pas.
Nous tirons un objet de DB, le jetons dans une liste <T>
, mettons cette liste dans le httpCache, puis déposez le contexte de données.
Deux demandes plus tard, nous appelons la table <T>
remplacée, il obtient la liste, et tire l'objet. Nous le changeons, puis nous devons rattacher l'objet mis en cache, puis modifié au contexte db. Nous appelons donc myContext.Attach (myobject) et ..... BOOM
Une tentative a été faite pour attacher ou Ajouter une entité qui n'est pas nouvelle, peut-être avoir été chargé d'un autre DataContext. Ce n'est pas supporté.
Y a-t-il un moyen de contourner cette limitation?
Je marque ceci comme réponse parce que "LinqToSql ne supporte pas ceci" * est * la réponse. –