Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
O EF Core não dá suporte ao formato de arquivo EDMX para modelos. A melhor opção para portar esses modelos é gerar um novo modelo baseado em código do banco de dados para seu aplicativo.
Instalar pacotes NuGet do EF Core
Instale o pacote do NuGet Microsoft.EntityFrameworkCore.Tools.
Regenerar o modelo.
Agora você pode usar a funcionalidade de engenheiro reverso para criar um modelo com base em seu banco de dados existente.
Execute o seguinte comando no Console do Gerenciador de Pacotes (Ferramentas -> Gerenciador de Pacotes NuGet -> Console do Gerenciador de Pacotes). Consulte o Console do Gerenciador de Pacotes (Visual Studio) para obter opções de comando para estruturar um subconjunto de tabelas etc.
Scaffold-DbContext "<connection string>" <database provider name>
Por exemplo, aqui está o comando para estruturar um modelo do banco de dados da atividade de blog em sua instância LocalDB do SQL Server.
Scaffold-DbContext "Server=(localdb)\mssqllocaldb;Database=Blogging;Trusted_Connection=True;" Microsoft.EntityFrameworkCore.SqlServer
Remover o modelo EF6
Agora você removeria o modelo EF6 do aplicativo.
É bom deixar o pacote NuGet EF6 (EntityFramework) instalado, pois o EF Core e o EF6 podem ser usados lado a lado no mesmo aplicativo. No entanto, se você não pretende usar o EF6 em nenhuma área do aplicativo, desinstalar o pacote ajudará a concentrar erros do compilador em partes de código que precisam de atenção.
Atualizar o código
Nesse ponto, é uma questão de abordar erros de compilação e revisar o código para ver se as alterações de comportamento entre o EF6 e o EF Core afetarão você.
Testar a porta
Só porque seu aplicativo é compilado, não significa que ele seja portado com êxito para o EF Core. Você precisará testar todas as áreas do aplicativo para garantir que nenhuma das alterações de comportamento tenha afetado negativamente seu aplicativo.
Outras considerações
O EF Core não dá suporte ao provedor EntityClient e, portanto, todas as consultas do EntitySQL devem ser migradas para LINQ ou FromRawSql.
Além disso, não há suporte para cadeias de conexão EntityClient.
Para obter mais considerações, leia o guia completo sobre as diferenças entre o EF6 e o EF Core.