Erstellen Sie eine Tabelle, wenn es nicht vorhanden ist?

Mithilfe von Entity Framework-Kern, gibt es eine Möglichkeit, um die Tabelle zu erstellen, wenn es noch nicht existiert? Ausnahme werfen wird, auch wenn EnsureCreated heißt in dem Kontext:

DbSet<Ticker> Ticker { get; set }
Database.EnsureCreated();

Ticker.Add(...);
dbctx.SaveChanges(); <== exception

Ergebnisse in Ausnahme:

System.Daten.SqlClient.SqlException: Ungültiger Objektname 'Ticker'

Gibt es eine Möglichkeit, um die Tabelle zu erstellen Ticker bevor die Daten eingefügt werden?

== EDIT==

Dieser Fragen ist nicht zu erstellen/migrieren die gesamte Datenbank, die Datenbank immer vorhanden und die meisten seiner Tabellen gibt es auch, aber einige der Tabellen nicht. So brauche ich nur eine oder zwei Tabellen im runtime.

  • Möglich, Duplikat der Prüfen Sie, ob eine Tabelle existiert in der Datenbank mit LINQ
  • Sie sind also darauf hindeutet, dass es keine Möglichkeit gibt, es zu tun?
  • Ich schlage vor, Sie überprüfen können, ob die Tabelle vorhanden ist, und erstellen Sie es, wenn nicht.
  • Ja, das ist eine gute Idee, aber wie zu tun, dass im EntityFramework?
  • Was ist mit stackoverflow.com/questions/6100969/...? es gibt viele Beispiele.
  • Ok, so überprüfen Sie die besteht aus einer Tabelle kann man mit EFCore aus, aber das erstellen der Tabelle durchgeführt werden müssen, um mit raw-sql-Abfrage? Ich fragte, weil ich vermeiden wollen, verwenden Sie die sql-Anweisung direkt in ein EFCore Anwendung.

InformationsquelleAutor fluter | 2017-07-17
Schreibe einen Kommentar