Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Talvez você queira armazenar suas migrações em um projeto diferente daquele que contém seu DbContext
. Você também pode usar essa estratégia para manter vários conjuntos de migrações, por exemplo, um para desenvolvimento e outro para atualizações de versão para lançamento.
Dica
Você pode visualizar o exemplo de deste artigo no GitHub.
Etapas
Crie uma nova biblioteca de classes.
Adicione uma referência ao seu projeto DbContext.
Mova os arquivos de migração e de captura instantânea de modelo para a biblioteca de classes.
Dica
Se você não tiver migrações existentes, gere uma no projeto que contém o DbContext e mova-a. Isso é importante porque, se o projeto de migrações não contiver uma migração existente, o comando Add-Migration não poderá localizar o DbContext.
Configure a configuração de migrações:
services.AddDbContext<ApplicationDbContext>( options => options.UseSqlServer( Configuration.GetConnectionString("DefaultConnection"), x => x.MigrationsAssembly("WebApplication1.Migrations")));
Adicione uma referência do projeto de inicialização ao seu projeto de migrações.
<ItemGroup> <ProjectReference Include="..\WebApplication1.Migrations\WebApplication1.Migrations.csproj" /> </ItemGroup>
Se isso causar uma dependência circular, você poderá, em vez disso, atualizar o caminho de saída padrão do projeto de migrações.
<PropertyGroup> <BaseOutputPath>..\WebApplication1\bin\</BaseOutputPath> </PropertyGroup>
Se você fez tudo corretamente, deverá ser capaz de adicionar novas migrações ao projeto.
dotnet ef migrations add NewMigration --project WebApplication1.Migrations