Dynamische Tabellennamen mit entity framework

Ich habe viele Tabellen mit dem gleichen Modell-Struktur, aber mit anderen Tabellennamen mit anderen Daten (in diesem Fall ~100 Tabellen). Ich möchte dynamisch wechseln Tabellennamen in der Laufzeit mit Entity Framework (zum Beispiel name der Tabelle, aus-routing). Tabellen in der Datenbank sind dynamisch hinzufügen und löschen, die von anderen Skript. Es ist ein Weg, dies zu tun mit einer guten Leistung wie diese?

db.Table("TableName")<SpecificModel>.Where(x => x.ID == ID)
  • Ich kann mir nicht helfen, aber Frage mich, warum du nicht einfach normalisieren Sie Ihre Tabellen in einer Tabelle? Wenn Sie alle die gleiche Struktur...
  • Der einfachste Weg ist nur zu normalisieren, aber ich kann es nicht in diesem Projekt. Tabellen werden getrennt sein müssen
  • Um das zu tun, was Sie wollen zu tun, müssen Sie aktualisieren Sie Ihre Datei edmx mit der neuen Metadaten der erstellten Tabellen. Ich kenne keine Möglichkeit, das zu tun diese zur Laufzeit, da die Aktualisierung der edmx-Datei erfordern würde, die ein Umbau wegen neuer code erzeugt werden. Ich denke, dass Entity Framework unterstützt derzeit nur das, was Sie zu tun versuchen.
  • Können Sie uns ein Beispiel für die Tabellen erstellt? Die Daten ändern sich radikal zwischen den einzelnen Tabellen? Was ist die Bedeutung jeder Tabelle, d.h. was hat jede Tabelle darstellen?
  • Tabellen-Struktur sind die gleichen wie Modell (früher "SpecificModel") für jede Tabelle. Sie unterscheiden sich in der Tabelle Namen wie "Company_A", "Company_B", "Company_C" und Daten in diese Tabellen aber nicht die Struktur. Natürlich kann ich hier einfügen, alle Modell mit sql-Skript zum erstellen der Tabellen (packte aus EF Code First), aber ich denke, es ist nicht notwendig und kann verwischen, was ein Punkt von meinem problem
  • Ich würde empfehlen, dass Sie erstellen Sie eine weitere Tabelle namens-Unternehmen mit den Unternehmen Namen und eine id und einen Fremdschlüssel in der SpecificModel Tabelle zu der Tabelle Unternehmen. Dann wird das Skript erstellt die Tabellen könnte stattdessen legen die Daten in die SpecificModel Tabelle mit der Firma id ist. Dann würden Sie in der Lage sein, leicht zu verwenden, um linq zu ziehen, das Unternehmen Informationen.

InformationsquelleAutor Obin | 2015-06-24
Schreibe einen Kommentar