Olá, Gabriel
Obrigado pelo seu feedback, ele é muito importante para podermos melhorar a comunicação com nossos alunos.
Quando falamos em "persistir os dados", queremos dizer "gravar os dados" no banco de dados, deixá-los armazenados,
sãos e salvos para podermos consultá-los futuramente.
O curso foi gravado usando o gerenciador de banco de dados SQL Server. Portanto, para trabalhar com outro banco de dados
será necessário instalar outro provedor de banco de dados. Qual banco de dados você pensa em usar?
Normalmente reutilizamos projetos anteriores para trabalhar com projetos novos. Então, respondendo sua pergunta:
em vez de digitar todo o código de conexão de dados a partir do zero, é bom você usar esse exemplo do curso sempre
que precisar de uma nova conexão, principalmente porque o exemplo do curso já está testado e funcionando. É claro que,
para sua string de conexão de banco de dados, vai ser preciso adaptar algumas coisas para a realidade do seu projeto
(como o nome do banco de dados).
Observe o código abaixo:
public class LojaContext : DbContext
{
public DbSet<Produto> Produtos { get; set; }
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
{
optionsBuilder.UseSqlServer("Server=(localdb)\\mssqllocaldb;Database=LojaDB;Trusted_Connection=true;")
}
}
}
O que ele faz?
A classe LojaContext
é o "contexto" do banco de dados, isto é: é onde o Entity Framework Core vai se basear para
poder acessar o seu banco de dados a partir do código C#.
A classe LojaContext
herda da classe-base DbContext
, que faz parte do Entity Framework Core. Toda aplicação que
usar Entity Framework Core precisa ter uma classe assim, que herda da classe-base DbContext
.
A propriedade Produtos
é uma coleção de produtos que mapeia a tabela Produtos do banco de dados para o seu código
C#.
O método OnConfiguring
é necessário para configurar as opções necessárias para o Entity Framework Core poder
trabalhar corretamente. No código acima, a linha...
optionsBuilder.UseSqlServer("Server=(localdb)\\mssqllocaldb;Database=LojaDB;Trusted_Connection=true;")
... vai configurar o Entity Framework Core para usar o Sql Server. Além disso, essa linha define as informações da conexão
com o banco de dados:
- Server: (localdb)\mssqllocaldb: indica que o servidor de banco de dados se chama (localdb)\mssqllocaldb
- Database=LojaDB: indica o nome do banco de dados
- Trusted_Connection=true: indica que o usuário vai ser autenticado através da sua identidade do Windows, isto é,
sem a necessidade de passar usuário e senha. Isso é conveniente quando o usuário do Windows já tem permissão sobre o servidor
de banco de dados e a aplicação aproveita essa permissão para autenticar o usuário.
Qualquer dúvida, por favor nos avise!