Най-накрая трябва да го поправя.
Има две решения, които намерих за отстраняване на проблема.
- Първо, има обща корекция за всички бази данни, които поддържат миграции на Entity Framework :
- Използване на .NET Core Задача, ще трябва да инсталираме инструмента dotnet ef :Задачата ще изглежда така:
И това ще бъде YAML (в случай, че искате да го използвате извън конвейера за издаване):
- task: [email protected]
displayName: 'dotnet custom'
inputs:
command: custom
custom: tool
arguments: 'install --global dotnet-ef --version 3.1.4 --ignore-failed-sources'
- И след като инсталираме необходимите инструменти, с CMD или Bash Задача, ще трябва да изпълним скрипт като този:
dotnet ef database update -c <DBCONTEXT> -p <PROJECT> -s <STARTUP_PROJECT> -v --no-build
Просто трябва да добавите флага -c в случай, че имате повече от един контекст във вашия проект (понякога другите DbContexts могат да идват от някои пакети за nugget).
Забележете, че добавих флага --no-build тъй като вече изградих проекта в процес на изграждане, за да следвам добрите практики.
- Другата опция (и тази, която най-накрая използвах), беше да използвам тази задача който основно извършва същия процес, с тази разлика, че го прави, като използва вашия вече компилиран .dll файлове, така че няма да се налага да копирате целия проект, за да накарате миграциите да работят. Настройката на задачата, въпреки че трябва да попълните много входове, е доста ясна и се предполага, че работи и с други бази данни.
Въпреки това, ако трябваше да използвам SQL Server или MySQL Бих използвал скрипт за миграция, тъй като процесът е много по-лесен (просто трябва да генерирате .sql скрипт и тогава това е единственият файл, необходим за внедряване на миграциите).