EF Core - воссоздать одну таблицу - PullRequest
0 голосов
/ 06 мая 2019

У меня есть процесс, в котором я пытаюсь обновлять базу данных из нескольких обновленных CSV.По сути, план состоит в том, чтобы иметь триггеры, которые наблюдают за репозиторием github и обрабатывают csv, когда новый коммит попадает в мастера.

Прямо сейчас я бью стену, опуская стол, прежде чем воссоздать его.Я могу удалить все таблицы, а затем воссоздать все таблицы.Однако мне нужна возможность отбросить одну таблицу (легко), а затем воссоздать таблицу, чтобы она была пустой и я мог загрузить в нее новый csv.Есть ли способ сделать это?

await context.Database.ExecuteSqlCommandAsync("DROP TABLE IF EXISTS AllStarFull");
await context.Database.ExecuteSqlCommandAsync("DROP TABLE IF EXISTS Appearances");
var dbCreator = (RelationalDatabaseCreator) context.Database.GetService<IDatabaseCreator>();
await dbCreator.CreateTablesAsync(); // Wishing there was a method to create a SINGLE table here...

В идеале, я бы хотел что-то вроде этого:

var dbCreator = (RelationalDatabaseCreator) context.Database.GetService<IDatabaseCreator>();
await dbCreator.CreateTableAsync(Model);

Я знаю, я могу легко запустить тот же context.Database.ExecuteSqlCommandAsync с sqlтребуется для создания таблицы, но я думаю, что идет вразрез с EF Framework.Если только нет какого-то способа получить сгенерированный sql из заданной модели платформы сущностей.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...