Frage

Ich versuche, einen Vergleich zwischen Subsonic 3, Datasets und Entity Framework zu erstellen. Der Grund, warum ist das für mein Praktikum, dass ich meine Entscheidungen klarstellen muss.Bis jetzt weiß ich noch, dass Datensätze den folgenden Weg mit dem Abrufen von Daten funktionieren:

    .
  1. db in den Speicher
  2. Abfrage auf dB im Speicher
  3. Ergebnis aus der Abfrage

    Entity Framework (.NET Version 3.5) Ist das folgende Weg. (Verwenden .NET 3.5 Weil es an SharePoint 2010 arbeiten muss, und dies unterstützt nur .NET 3.5 aufgrund der CLR-Version)

      .
    1. Abfrage auf db
    2. Ergebnis in Objekte in Erinnerung zurückgegeben
    3. Ergebnis zurückgegeben

      Bis jetzt habe ich kein Schema für Subsonic 3 gefunden, wie sie es tun. Ich hoffe, einer von euch kann mir helfen

War es hilfreich?

Lösung

hängt absolut von der Strategie ab, die Sie verwenden (ActiveCord / Linqtemplates / SimpleeReary)

    .
  • Activecord: Jeder einzelne Datensatz enthält eine eigene Instanz zu einem Repo, der zu einer hohen Speicherverwendung für große Listen führt.

  • linqtemplates: Viel weniger Speichernutzung, Sie haben eine Instanz Ihres DB, die das Programm jeder Tabelle und der reinen Daten enthält.

  • SimpleeReePository Noch weniger, da die Repo-Instanz nichts über Ihre Datenbank kennt. Es ist fast nur die Verwendung der reinen Daten im Speicher.

    Ich würde beim Verwenden von ActiveCord- und Linq-Vorlagen empfehlen. Linq zum Abfragen großer Listen und ActiveCord zum Bearbeiten von einzelnen Datensätzen oder kleinen Listen (<100 Einträge).

    Subsonic tat nicht mit dem Design zwischen Caching, also würde ich mir keine Sorgen machen. Aber das Tolle an dem Linq-Zeug (für alle drei Strategien) ist, dass Sie die Datenbank nicht angeben, bis Sie die Daten benötigen, sodass Sie steuern können, wie viel Speicher Sie verwenden.

    Beispiel: generasacodicetagpre.

    update: Ich weiß nicht, was für eine Art von Anwendung, die Sie entwickeln Mit den Linqtemplates von Subsonic (da er an einen iQuerlant- und selbst gebunden werden kann, handelt das Paging / Sortieren / Filtern auf dem IQUERLERY und benötigt nur ein paar Datensätze. Dies reduziert den Memory-Footprint und die Belastung der Leistung unserer App (das einen Bündel Datensätze in eine datatable geladen hat).

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top