UNIVERSIDADE DE BELAS – UNIBELAS
FACULDADE DE ENGENHARIA
DEPARTAMENTO DE ENGENHARIA INFORMÁTICA
__________________ || ____________________
DISCIPLINA: POO-IV
DOCENTE: JOSÉ QUEIRÓS
E-mail: [Link]@[Link]
Entity Framework
O Entity Framework é uma ferramenta ORM (Object-relational
mapping) que permite ao desenvolvedor trabalhar com dados
relacionais na forma de objectos específicos do domínio.
Existem duas versões do Entity Framework: Entity Framework Core e
Entity Framework 6.x.
Entity Framework 6.x
O Entity Framework 6.x (EF6.x) é uma tecnologia de acesso a dados
testada, relativamente madura e estável. Foi lançado pela primeira vez
em 2008, como parte do .NET Framework 3.5 e do Visual Studio 2008.
Começando com a versão EF4.1, foi enviado como o
pacote EntityFramework NuGet - atualmente o pacote mais popular
no [Link].
Entity Framework
O EF6.x continua a ser um produto suportado e continuará a ver
correções de bugs e pequenas melhorias por algum tempo.
Entity Framework Core
O Entity Framework Core (EF Core) é uma versão leve, extensível e
multiplataforma do Entity Framework. O EF Core introduz muitas
melhorias e novos recursos quando comparado com o EF6.x. Ao mesmo
tempo, o EF Core é uma nova base de código e um novo produto.
O EF Core mantém a experiência do desenvolvedor do EF6.x e a maioria
das APIs de alto nível permanece a mesma, portanto, o EF Core vai
parecer muito familiar para quem já usou o EF6.x. Ao mesmo tempo, o
EF Core é construído sobre um conjunto completamente novo de
componentes principais.
Entity Framework
Isso significa que o EF Core não herda automaticamente todos os
recursos do EF6.x. Alguns desses recursos aparecerão em lançamentos
futuros (como o lazy loading e a resiliência da conexão), outros recursos
menos usados não serão implementados no EF Core.
O novo núcleo , extensível e leve também permitiu adicionar alguns
recursos ao EF Core que não serão implementados no EF6.x (como
chaves alternativas e avaliação mista de cliente/banco de dados em
consultas LINQ).
Entity Framework
Nota1: Usar as duas versões em uma mesma aplicação é possível pois
elas possuem os mesmos tipos diferindo apenas no namespaces e isso
pode tornar a manutenção do seu código muito complexa.
Nota2: Devido a mudanças estruturais feitas no EF Core não é
recomendado mover uma aplicação que usa o EF 6.x para o EF Core a
não se que isso se caso de 'vida ou morte’.
Com isso em mente vamos iniciar a nossa jornada com o Entity
Framework Core de agora em diante EF Core.
Entity Framework
Entity Framework Core
O EF Core é um mapeador objecto-relacional (O/RM) que permite aos
desenvolvedores .NET trabalhar com um banco de dados usando
objectos .NET. Elimina a necessidade da maior parte do código de
acesso a dados que os desenvolvedores normalmente precisam
escrever. O EF Core suporta muitos mecanismos de base de dados.
Entity Framework
Entity Framework Core
O EF Core é uma versão totalmente nova baseada no EF 6.x :
•Foi reescrito a partir do zero;
•É multiplataforma (Windows, Mac e Linux);
•É Modular e suporta diversos provedores: SQL Server, MySQL,
PostgreSQL, Oracle, SQLite, SQLCompact, DB2, InMemory, Azure Table
Storage, etc;
•É open source e esta disponível no GitHub;
•Pode ser usado em aplicações Windows Forms, WPF, Console, ASP .NET,
ASP .NET Core, WUP, Xamarin (em breve), etc;
•Suporta as abordagens : Code First, Database First, Shadow Properties,
Alternate Keys, etc;
•Suporta a ferramenta de linha de comando : NET Core CLI
•Pode ser instalado via Nuget : Install-Package
[Link]
Entity Framework
Entity Framework Core
O modelo
Com o EF Core, o acesso a dados é executado usando um modelo. Um
modelo é composto de classes de entidade e um contexto derivado que
representa uma sessão com o banco de dados, permitindo que você
pesquise e salve dados.
Podemos criar um modelo usando as seguintes abordagens:
1 - Você pode gerar um modelo a partir de um banco de dados
existente;
2 - Codificar manualmente um modelo para corresponder ao seu banco
de dados;
3 - Usar o EF Migrations para criar um banco de dados a partir do seu
modelo (e depois evoluí-lo conforme seu modelo muda ao longo do
tempo).
Entity Framework
Instalação do Entity Framework
Core
Introdução ao [Link]
MVCPártico…Instalar os seguintes pacotes:
Trabalho