Model First
Este vídeo e passo a passo fornecem uma introdução ao desenvolvimento do Model First usando o Entity Framework. O Model First permite que você crie um novo modelo usando o Entity Framework Designer e, em seguida, gere um esquema de banco de dados a partir do modelo. O modelo é armazenado em um arquivo EDMX (extensão .edmx) e pode ser exibido e editado no Entity Framework Designer. As classes com as quais você interage em seu aplicativo são geradas automaticamente a partir do arquivo EDMX.
Este vídeo e passo a passo fornecem uma introdução ao desenvolvimento do Model First usando o Entity Framework. O Model First permite que você crie um novo modelo usando o Entity Framework Designer e, em seguida, gere um esquema de banco de dados a partir do modelo. O modelo é armazenado em um arquivo EDMX (extensão .edmx) e pode ser exibido e editado no Entity Framework Designer. As classes com as quais você interage em seu aplicativo são geradas automaticamente a partir do arquivo EDMX.
Apresentado por: Rowan Miller
Você precisará ter o Visual Studio 2010 ou o Visual Studio 2012 instalado para concluir este passo a passo.
Se você estiver usando o Visual Studio 2010, também precisará ter o NuGet instalado.
Para manter as coisas simples, vamos criar um aplicativo de console básico que usa o Model First para executar o acesso a dados:
- Abra o Visual Studio
- Arquivo -> Novo -> Projeto
- Selecione Windows no menu à esquerda e Aplicativo de console
- Insira ModelFirstSample como o nome
- Selecione OK
Vamos usar o Entity Framework Designer, que está incluído como parte do Visual Studio, para criar nosso modelo.
Projeto –> Adicionar novo item...
Selecione Dados no menu esquerdo e Modelo de Dados de Entidade ADO.NET
Insira BloggingModel como o nome e clique em OK, isso inicia o Assistente de Modelo de Dados de Entidade
Selecione Modelo vazio e clique em Concluir
O Designer do Entity Framework é aberto com um modelo em branco. Agora podemos começar a adicionar entidades, propriedades e associações ao modelo.
Clique com o botão direito do mouse na superfície de design e selecione Propriedades
Na janela Propriedades, altere o Nome do Contêiner da Entidade para BloggingContextEste é o nome do contexto derivado que será gerado para você, o contexto representa uma sessão com o banco de dados, permitindo que consultemos e salvemos dados
Clique com o botão direito do mouse na superfície de design e selecione Adicionar Novo –> Entidade...
Insira o Blog como o nome da entidade e o BlogId como o nome da chave e clique em OK
Clique com o botão direito do mouse na nova entidade na superfície de design e selecione Adicionar Novo -> Propriedade escalar, insira Nome como o nome da propriedade.
Repita esse processo para adicionar uma propriedade Url.
Clique com o botão direito do mouse na propriedade Url na superfície de design e selecione Propriedades, na janela Propriedades, altere a configuração Anulável para True, isso nos permite salvar um Blog no banco de dados sem atribuir a ele uma URL
Usando as técnicas que você acabou de aprender, adicione uma entidade Post com uma propriedade de chave PostId
Adicionar propriedades escalares de Título e Conteúdo à entidade Post
Agora que temos algumas entidades, é hora de adicionar uma associação (ou relação) entre elas.
Clique com o botão direito do mouse na superfície de design e selecione Adicionar Novo –> Associação...
Criar uma extremidade do ponto de relação para o Blog com uma multiplicidade de Um e o outro ponto de extremidade para Postar com uma multiplicidade de MuitosIsso significa que um Blog tem muitas Postagens e uma Postagem pertence a um Blog
Verifique se a caixa Adicionar propriedades de chave estrangeira à caixa Entidade 'Post' está marcada e clique em OK
Agora temos um modelo simples do qual podemos gerar um banco de dados e usar para ler e gravar dados.
Se você estiver trabalhando no Visual Studio 2010, há algumas etapas adicionais que você precisa seguir para atualizar para a versão mais recente do Entity Framework. A atualização é importante porque fornece acesso a uma superfície de API aprimorada, que é muito mais fácil de usar, bem como as correções de bug mais recentes.
Primeiro, precisamos obter a versão mais recente do Entity Framework do NuGet.
- Projeto –> Gerenciar pacotes NuGet...Se você não tiver a opção Gerenciar Pacotes NuGet... deverá instalar a versão mais recente do NuGet
- Selecione a guia Online
- Selecione o pacote EntityFramework
- Clique em Instalar
Em seguida, precisamos trocar nosso modelo para gerar código que use a API DbContext, que foi introduzida em versões posteriores do Entity Framework.
Clique com o botão direito do mouse em um local vazio do seu modelo no Designer do EF e selecione Adicionar item de geração de código...
Selecione Modelos Online no menu à esquerda e procure por DbContext
Selecione o Gerador DbContext EF 5.x para C#, insira BloggingModel como o nome e clique em Adicionar
Considerando nosso modelo, o Entity Framework pode calcular um esquema de banco de dados que nos permitirá armazenar e recuperar dados usando o modelo.
O servidor de banco de dados instalado com o Visual Studio é diferente dependendo da versão do Visual Studio que você instalou:
- Se você estiver usando o Visual Studio 2010, criará um banco de dados SQL Express.
- Se você estiver usando o Visual Studio 2012, criará um banco de dados LocalDB.
Vamos em frente e gerar o banco de dados.
Clique com o botão direito do mouse na superfície de design e selecione Gerar Banco de Dados do Modelo...
Clique em Nova Conexão... e especifique LocalDB ou SQL Express, dependendo de qual versão do Visual Studio você está usando, insira ModelFirst.Blogging como o nome do banco de dados.
Selecione OK e você será perguntado se deseja criar um novo banco de dados, selecione Sim
Selecione Avançar e o Designer do Entity Framework calculará um script para criar o esquema de banco de dados
Depois que o script for exibido, clique em Concluir e o script será adicionado ao seu projeto e aberto
Clique com o botão direito do mouse no script e selecione Executar, será solicitado que você especifique o banco de dados ao qual se conectar, especifique LocalDB ou SQL Server Express, dependendo de qual versão do Visual Studio você está usando
Agora que temos um modelo, é hora de usá-lo para acessar alguns dados. As classes que usaremos para acessar dados estão sendo geradas automaticamente para você com base no arquivo EDMX.
Essa captura de tela é do Visual Studio 2012, se você estiver usando o Visual Studio 2010, os arquivos BloggingModel.tt e BloggingModel.Context.tt estarão diretamente em seu projeto, em vez de aninhados no arquivo EDMX.
Implemente o método Main em Program.cs, conforme mostrado abaixo. Esse código cria uma nova instância do nosso contexto e a usa para inserir um novo Blog. Em seguida, usa uma consulta LINQ para recuperar todos os Blogs do banco de dados ordenado em ordem alfabética pelo Título.
class Program
{
static void Main(string[] args)
{
using (var db = new BloggingContext())
{
// Create and save a new Blog
Console.Write("Enter a name for a new Blog: ");
var name = Console.ReadLine();
var blog = new Blog { Name = name };
db.Blogs.Add(blog);
db.SaveChanges();
// Display all Blogs from the database
var query = from b in db.Blogs
orderby b.Name
select b;
Console.WriteLine("All blogs in the database:");
foreach (var item in query)
{
Console.WriteLine(item.Name);
}
Console.WriteLine("Press any key to exit...");
Console.ReadKey();
}
}
}
Agora você pode executar e testar o aplicativo.
Enter a name for a new Blog: ADO.NET Blog
All blogs in the database:
ADO.NET Blog
Press any key to exit...
Agora é hora de fazer algumas alterações em nosso modelo, quando fazemos essas alterações, também precisamos atualizar o esquema de banco de dados.
Começaremos adicionando uma nova entidade de usuário ao nosso modelo.
Adicionar um novo nome de entidade de Usuário com Nome de usuário como o nome de chave e Cadeia de caracteres como o tipo de propriedade para a chave
Clique com o botão direito do mouse na propriedade Nome de Usuário na superfície de design e selecione Propriedades, na janela Propriedades, altere a configuração MaxLength para 50Isso restringe os dados que podem ser armazenados no nome de usuário a 50 caracteres
Adicionar uma propriedade escalar DisplayName à entidade User
Agora temos um modelo atualizado e estamos prontos para atualizar o banco de dados para acomodar nosso novo tipo de entidade de usuário.
- Clique com o botão direito do mouse na superfície de design e selecione Gerar Banco de Dados do Modelo..., o Entity Framework calculará um script para recriar um esquema com base no modelo atualizado.
- Clique em Concluir
- Você pode receber avisos sobre como substituir o script DDL existente e as partes de mapeamento e armazenamento do modelo, clique em Sim para ambos os avisos
- O script SQL atualizado para criar o banco de dados é aberto para você
O script gerado removerá todas as tabelas existentes e recriará o esquema do zero. Isso pode funcionar para o desenvolvimento local, mas não é viável para enviar alterações por push a um banco de dados que já foi implantado. Se você precisar publicar alterações em um banco de dados que já foi implantado, será necessário editar o script ou usar uma ferramenta de comparação de esquema para calcular um script de migração. - Clique com o botão direito do mouse no script e selecione Executar, será solicitado que você especifique o banco de dados ao qual se conectar, especifique LocalDB ou SQL Server Express, dependendo de qual versão do Visual Studio você está usando
Neste passo a passo, analisamos o desenvolvimento do Model First, que nos permitiu criar um modelo no Designer EF e, em seguida, gerar um banco de dados desse modelo. Em seguida, usamos o modelo para ler e gravar alguns dados do banco de dados. Por fim, atualizamos o modelo e recriamos o esquema de banco de dados para corresponder ao modelo.
Comentários do .NET
O .NET é um projeto código aberto. Selecione um link para fornecer comentários: