Adicionando um novo modelo
por Rick Anderson
Observação
Uma versão atualizada deste tutorial está disponível aqui usando a versão mais recente do Visual Studio. O novo tutorial usa ASP.NET Core MVC, que fornece muitas melhorias ao longo deste tutorial.
Este tutorial ensina a usar o ASP.NET Core MVC com controladores e exibições. O Razor Pages é uma nova alternativa no ASP.NET Core, um modelo de programação baseado em página que torna a criação da interface do usuário da Web mais fácil e produtiva. Recomendamos que você experimente o tutorial do Razor Pages antes da versão do MVC. O tutorial Páginas do Razor:
- É mais fácil de acompanhar.
- Aborda mais recursos.
- É a abordagem preferencial para o desenvolvimento de novos aplicativos.
Nesta seção, você adicionará algumas classes para gerenciar filmes em um banco de dados. Essas classes serão a parte "modelo" do aplicativo MVC ASP.NET.
Você usará uma tecnologia de acesso a dados .NET Framework conhecida como Entity Framework para definir e trabalhar com essas classes de modelo. O Entity Framework (geralmente chamado de EF) dá suporte a um paradigma de desenvolvimento chamado Code First. O Code First permite que você crie objetos de modelo escrevendo classes simples. (Elas também são conhecidas como classes POCO, de "objetos CLR simples e antigos".) Em seguida, você pode criar o banco de dados em tempo real a partir de suas classes, o que permite um fluxo de trabalho de desenvolvimento muito limpo e rápido. Se for necessário criar o banco de dados primeiro, você ainda poderá seguir este tutorial para saber mais sobre o desenvolvimento de aplicativos MVC e EF. Em seguida, você pode seguir Tom Fizmakens ASP.NET tutorial scaffolding , que aborda a primeira abordagem do banco de dados.
Adicionando classes de modelo
Em Gerenciador de Soluções, clique com o botão direito do mouse na pasta Modelos, selecione Adicionar e, em seguida, selecione Classe.
Insira o nome da classe "Movie".
Adicione as cinco propriedades a Movie
seguir à classe :
using System;
namespace MvcMovie.Models
{
public class Movie
{
public int ID { get; set; }
public string Title { get; set; }
public DateTime ReleaseDate { get; set; }
public string Genre { get; set; }
public decimal Price { get; set; }
}
}
Usaremos a Movie
classe para representar filmes em um banco de dados. Cada instância de um Movie
objeto corresponderá a uma linha dentro de uma tabela de banco de dados e cada propriedade da Movie
classe será mapeada para uma coluna na tabela.
Observação: para usar System.Data.Entity e a classe relacionada, você precisa instalar o Pacote NuGet do Entity Framework. Siga o link para obter mais instruções.
No mesmo arquivo, adicione a seguinte MovieDBContext
classe:
using System;
using System.Data.Entity;
namespace MvcMovie.Models
{
public class Movie
{
public int ID { get; set; }
public string Title { get; set; }
public DateTime ReleaseDate { get; set; }
public string Genre { get; set; }
public decimal Price { get; set; }
}
public class MovieDBContext : DbContext
{
public DbSet<Movie> Movies { get; set; }
}
}
A MovieDBContext
classe representa o contexto do banco de dados de filme do Entity Framework, que manipula a busca, o armazenamento e a atualização Movie
de instâncias de classe em um banco de dados. O MovieDBContext
deriva da DbContext
classe base fornecida pelo Entity Framework.
Para poder referenciar DbContext
e DbSet
, você precisa adicionar a seguinte using
instrução na parte superior do arquivo:
using System.Data.Entity;
Você pode fazer isso adicionando manualmente a instrução using ou pode passar o mouse sobre as linhas vermelhas, clicar Show potential fixes
e clicar em using System.Data.Entity;
Observação: várias instruções não utilizados using
foram removidas. O Visual Studio mostrará dependências não usadas como cinza. Você pode remover dependências não usadas passando o mouse sobre as dependências cinza, clicar Show potential fixes
e clicar em Remover Usos Não Utilizados.
Finalmente adicionamos um modelo (o M no MVC). Na próxima seção, você trabalhará com a cadeia de conexão do banco de dados.