Ich habe eine Webanwendung. Es liest eine Menge Daten auf kleinen Tabellen und ein paar schreibt. Ich möchte ganze Datenbanktabellen in den Cache ziehen und die zwischengespeicherten Daten abfragen. Ich überschreibe die Tabelle <T>
() -Methode des Kontexts, sodass wir Cache anstelle von Live-Daten bereitstellen können. Funktioniert hervorragend für Einfügungen und unterstützt auch den Datenzugriff von Einheitentests. Genial.Caching Linq2Sql Daten
So begannen wir mit der Verwendung von Cache-Daten und stellten fest, dass Aktualisierungen und Löschungen nicht funktionieren.
Wir ziehen ein Objekt aus db, wirf es in eine Liste <T>
, lege diese Liste in den httpCache und lege dann den Datenkontext ab.
Zwei Anfragen später, rufen wir die überschriebene Tabelle <T>
, es ruft die Liste und zieht das Objekt aus. Wir ändern es und müssen dann das zwischengespeicherte, dann geänderte Objekt an den db-Kontext anhängen. So nennen wir myContext.Attach (myobject) und ..... BOOM
Ein Versuch unternommen wurde, befestigen oder ein Unternehmen hinzufügen, die nicht neu ist, vielleicht von einer anderen Datacontext geladen wurde. Dies wird nicht unterstützt.
Gibt es einen Weg um diese Einschränkung?
Ich markiere dies als die Antwort, weil "LinqToSql dies nicht unterstützt" * ist * die Antwort. –