Entity Framework: создать скрипт для перехода вниз [дубликат]

Мне нравится ответ кайара. Если вы не хотите прикасаться к входным файлам, и если вы используете CMake, вы можете добавить последовательности символов деления в файл. Следующий код CMake, например, копирует входные файлы и соответственно переносит их содержимое:

function(make_includable input_file output_file)
    file(READ ${input_file} content)
    set(delim "for_c++_include")
    set(content "R\"${delim}(\n${content})${delim}\"")
    file(WRITE ${output_file} "${content}")
endfunction(make_includable)

# Use like
make_includable(external/shaders/cool.frag generated/cool.frag)

Затем включите в c ++, как это:

constexpr char *test =
#include "generated/cool.frag"
;
8
задан mayash 3 June 2012 в 16:36
поделиться

1 ответ

Похоже, что API миграции ожидает, что вы захотите перейти на понижение только с «последней версии».

Если вы последний раз выполняете BlogLimitsAndTableRename, вы можете просто запустить:

Update-Database -Script -TargetMigration:"201205161144187_AddPostAbstract"

Если это не последний перенос, вам нужно вернуть базу данных разработки сначала:

Update-Database -TargetMigration:"201205161203310_BlogLimitsAndTableRename"

, и теперь вы сможете использовать первую команду для получения скрипта.

12
ответ дан Ladislav Mrnka 18 August 2018 в 21:05
поделиться
  • 1
    Это имеет смысл. Представьте, что у вас есть база данных в состоянии 5, и вы попытаетесь получить скрипт для понижения с 4 до 3. Затем база данных может быть легко повреждена. Либо указывая это на db действительно в состоянии 4, либо на локальном нажатии в состояние 4, вы задумываетесь об этом перед тем, как сделать необратимый беспорядок. OTOH он может быть поддержан с помощью некоторого переключателя -Force или большого красного предупреждения. :) – cincura.net 3 June 2012 в 20:21
  • 2
    Я думал о наличии базы данных в состоянии 5 и теперь получил скрипт, чтобы понизить его с 5 до 2. EF-миграция заставляет меня понижать с 5 до 4, затем понижать с 4 до 3, а затем от 3 до 2, а все, что я хочу состоит в том, чтобы создать единый скрипт, который уже будет содержать все эти понижения без необходимости их выполнения. (Для обновления, например, вы можете иметь базу данных в состоянии 5 и создать сценарий обновления от 2 до 5). – mayash 4 June 2012 в 08:20
  • 3
    Или вы можете иметь базу данных в состоянии 5 и создать сценарий обновления от 2 до 4. – mayash 4 June 2012 в 08:32
  • 4
    Вы можете создать сценарий понижения от текущей версии (5) до версии 2. Вам просто нужно запустить первую указанную команду с именем второй миграции. – Ladislav Mrnka 4 June 2012 в 09:20
  • 5
    Я попробую. Благодарю. – mayash 4 June 2012 в 10:24
Другие вопросы по тегам:

Похожие вопросы: