Entity Framework 4 - Umgang mit sehr großen (1000+ Tabellen) - Daten-Modelle?
Wir haben eine Datenbank mit über 1000+ Tabellen und würde gerne zu prüfen, mit EF4 für die data-access-layer, aber ich bin besorgt über die praktischen Gegebenheiten mit es für eine so große Daten-Modell. Ich habe gesehen, diese Frage und Lesen Sie über die vorgeschlagenen Lösungen hier und hier. Diese können funktionieren, aber die scheinen zu beziehen sich auf die erste version des Entity Framework (und komplexer sind, als ich möchte). Weiß jemand, ob diese Lösungen wurden verbessert in EF4? Oder haben Sie andere Vorschläge alle zusammen? Danke.
UPDATE: Nach einer Reihe von versuchen zu machen, EF arbeiten, habe ich beschlossen, Sie zu verlassen alle gemeinsam für dieses Projekt. Große Daten-Modell-Unterstützung gibt es nicht und kann es werden Problemumgehungen Arbeit (z.B. Bearbeitung und Pflege der xml-unabhängig von der designer), die Sie gerade nicht das Gefühl, bereit für die prime time. Am problematischsten ist für mich die Tatsache, dass die EF funktioniert nicht gut mit dem domain-Modell erstrecken sich über mehrere XML-Dateien ohne viel Redundanz und Duplizierung von code. Ich bin immer noch offen für Verbesserungsvorschläge (ich weiß, ich habe Sie nicht geschält zurück alle Schichten der EF Zwiebel), aber für jetzt, ich bewege mich auf, ohne EF.
UPDATE #2: Es sieht aus wie die angemeldete erste code-Unterstützung (derzeit in EF4 CTP4) ist wahrscheinlich am Ende wird die Lösung, die wir wollen, wie es dauert, die designer und großen XML-Datei der Wartung aus dem Spiel.
- Klingt verrückt... 1000+ Tabellen wäre nicht zugeordnet werden.. Sie sind Art von add, eine überwältigende monolithische Daten-access-Architektur. Es gibt etwas falsch mit der vorgeschlagenen Lösung. Freut mich zu Lesen, dass Sie hatte es aufgegeben.
- Annahme von marc_s Antwort unten. Wie schon gesagt, ich denke, dass EF 4.1 ist der Weg zu gehen, nehmen die designer / XML-Wartung komplett aus dem Spiel. Wenn gezwungen, EF 4.0, dann denke ich, man ist eingeschränkt, denn er schreibt in seiner Antwort.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Die Zahl, die ich hörte, in einer Microsoft screencast ist ein maximum von etwa 250 Tabellen pro EF-Modell. Das bedeutet nicht, dass EF nicht umgehen kann mehr - es kann nur sinnvoll sein, brechen Ihre 1000+ Tabellen in mehrere logische Gruppen von Tabellen und verwenden Sie ein EF-Modell pro solche logischen Gruppe (mit bis zu 250 Tabellen).
Ich stark bezweifle, musst du Abfragen, müssen alle 1000 Tischen gleichzeitig - wahrscheinlich auch nicht 10 auf einmal. So sollten Sie auf jeden Fall in der Lage sein, um aufgeteilt Ihren ziemlich großes Modell in kleinere Cluster und drehen Sie jede in einem separaten EF-Modell.
Sollten Sie auf jeden Fall werfen Sie einen Blick auf LLBLGen Pro v3. Während LLBLGen ist ein weiterer O/RM-tool, genau wie EF ist eine O/RM-tool, die neueste version enthält einen designer, der Ihnen erlaubt, um Modelle zu generieren, die für LINQ to SQL, NHibernate UND Entity Framework (sowohl 1.0 und 4.0). Seine designer ist ziemlich solide und hat eine bessere Unterstützung für große domain-Modelle.
Ich bin mir sicher, dass nicht alle 1000+ Tabellen verknüpft sind. Brechen Sie in logische Teile.