20% OFF
Curso ASP .NET Core MVC -  Crie um site do Zero

Curso ASP .NET Core MVC
Criando um Site do Zero (Venda de Lanches)
46 Vídeo Aulas (Assista a Apresentação)
Conteúdo e duração de cada vídeo aula

1a. Introdução - duração 5:40 minutos
- Objetivo do curso
- Ferramentas usadas
- Pré-requisitos necessários
- Dúvidas ? Como fazer

2a. Apresentação do site de Venda de Lanches - duração 7:04 minutos
- Apresentação da aplicação : Venda de Lanches online
- Principais Funcionalidades
- Página de lanches, carrinho de compras, área de adminstração

3a. Ferramentas usadas no curso - duração 5:05 minutos
- Ambiente Windows 
- Ambiente Linux e MacOs
- Visual Studio 2017 Community
- SQL Server
- SQL Server Management Studio

4a. Criando o Projeto  - duração 8:22 minutos
- Criando o projeto no VS 2017 Community
- Template Web Application (Model-View-Controller)
- Estrutura do projeto

5a. Apresentando o padrão MVC - duração 12:09 minutos
- O padrão MVC : Model , View, Controller
- Controladores e métodos Action e URL
- Fluxo de atendimento de requisições
- Entendendo como funciona o MVC

6a. Funcionamento do projeto - duração 11:17 minutos
- Startup : Serviço MVC, 
- Verificando o ambiente de trabalho
- Rota padrão :  Metódo Configure do arquivo Startup
- Arquivo de _Layout e projeto

7a. Criando o Modelo de Domínio - duração 10:13 minutos
-  Modelo de domínio : Lanche e Categoria
-  Usando a Abordagem Code-First
-  Entity FrameworkCore 2.0

8a. Entity Framework Core -  duração 7:32 minutos
- Apresentando o EF Core
- Ferramente ORM - Mapeamento objeto relacional
- DbContext e DbSet e LINQ
- DataBaseFirst e Code First

9a. Configurando o EF Core - duração 13:18 minutos
- Referencia aos pacotes do EF Core via Nuget
- Definindo a classe de Contexto : DbContext
- Definindo as entidades com DbSet
- Registrar contexto como serviço : Startup
- Definindo a string de conexão no arquivo appsettings.json

10a. Data Annotations - duração 3:01 minutos
- Validando o modelo com Atributos Data Annotations
- Principais atributos : Required, Display, StringLenght, DataType

11a. Usando Migrations - duração 11:31
- Gerenciando o versionamento do banco de dados
- add-migration - gerando o script da migração
- update-database - aplicando o script e atualizando o banco de dados
- Criando o banco de dados e as tabelas Lanches e Categorias
- Ajustando o esquema usando DataAnnotations

12a. Populando o banco de dados com Migrations - duração 11:11 minutos
- Populando as tabelas com dados via Migrations
- Criando uma migração: Os métodos Up() e Down()
- Usando o método MigrationBuilder.Sql() para definir comandos SQL

13a. Apresentando o padrão Repository - duração 4:44
- O conceito do padrão Repository : Desacoplando a camada de acesso a dados
- Centralizando as consultas em um Repositório
- Vantagens do padrão Repository

14a. Implementando o padrão Repository - duração 15:46  minutos
- Definindo as interfaces ICategoriaRepository e ILancheRepository
- Implementando o repositórios : CategoriaRepository e LancheRepository
- Registrar os serviços do repostórios para realizare a injeção de dependência
- services.AddTransient<Interface,implementação>

15a. Criando o Controlador e a View para exibir lanches - duração 14:52 minutos
- As convenções usadas com o Controller. Como criar um Controller
- Criando um controlador : LanchesController
- Referenciando os repositórios no Controlador
- Retornando uma lista de lanches. Usando ViewBag e ViewData.
- Criando uma view razor List.cshtml usando o Scaffolding

16a. Ajustando o código da view List - duração 6:14 minutos
- Ajustando o código da View List.cshtml
- Definindo um model na View: @model
- Definindo o código Razor para exibir dados dos lanches

17a. Os arquivos _ViewStart e _ViewImports e BootStrap - duração 6:14 minutos
- _ViewStart - definindo o arquivo de layout usado
- _ViewImports - definindo os namespaces e as taghelpers
-  Bootstrap - Aplicando estilos e melhorando a aparência da aplicação

18a. ViewModel - Conceito - duração 2:42 minutos
- Apresentando o conceito de ViewModel
- Separando a lógica da View em uma ViewModel
- Benefícios da ViewModel

19a. Implementando o padrão ViewModel - duração 8:44 minutos
- Criando a viewmodel LancheListViewModel
- Definindo a lógica da View em LancheListViewModel
- Ajustando o controlador para usar a View Model criada e exibir os lanches

20a. Apresentando Partial Views - duração 5:28 minutos
- Partial View - view renderizada em outra view
- Encapsula a lógica usada nas views
- Permite reutilizar o código de uma view em outras views
- As partials Views não possuem layout
- Invocando partial views : @Html.Partial("NomeView", model),  RenderPartial

21a. Implementando Partial Views - duração 4:47  minutos
- Criando uma partial view para exibir lanches
- Criando a partial View _LanchesResumo na pasta Shared
- Renderizando a partial na View List.chstml

22a. Carrinho de Compras - duração 7:38  minutos
- Implementar a classe CarrinhoCompraItens
- Definir o DbSet<> na classe de contexto AppDbContext
- Usar o Migrations para atualizar o esquema do banco de dados
- Criar a tabela CarrinhoCompraItens usando Migrations

23a. Session e o estado da aplicação - duração 5:09  minutos
- Apresentando Session : conceitos
- Usando Session : Microsoft.AspNetCore.Session
- Configurando a Sessão
- Definir cache de memória : MemoryCache
- Usar a Session : AddSession()
- Ativar o middleware :  services.UseSession()

24a. Implementando o Carrinho de Compras - duração 16:32
- Criando a classe CarrinhoCompra
- Métodos do Carrinho:  incluir lanche, remover lanche, obter carrinho, limpar carrinho
- Definir serviço para obter carrinho da Session : IHttpContextAcessor
- Registrando um serviço para obter o carrinho da sessão

25a. Implementando o controller do Carrinho de Compras - duração 15:25  minutos
- Criar o controller CarrinhoCompraController
- Definir métodos Action para:  Apresentar o carrinho, incluir e remover itens do carrinho
- Definir a View Index para apresentar o carrinho

26a. Criando a página inicial - Lanches Preferidos  - duração 12:25 minutos
- Aproveitando o código do controlador HomeController
- Ajustando o código da Action Index para obter os lanches preferidos
- Criando a view model HomeViewModel para usar como model na View Index
- Criando uma partial view para exibir o carousel com imagens de lanches
- Criar a View Index para exibir os lanches preferidos

27a. Apresentando as ViewComponents - duração 5:04  minutos
- ViewComponents : conceitos
- Como funcionam as ViewsComponents
- Como criar e usar uma ViewComponent

28a. Implementando uma ViewComponent - duração 11:52  minutos
- Criar uma View Component para exibir a quantidade de itens do carrinho
- Criar a pasta Components e a classe CarrinhoCompraResumo
- Definir o código do método Invoke()
- Criar a View Default.cshtml

29a. Apresentando as TagHelpers - duração 6:17  minutos
- TagHelpers : Conceitos
- Como funciona e como usar 
- Principais taghelpers : asp-for, asp-controller, asp-action

30a. Criando uma TagHelper - duração 9:59  minutos
- Criando uma TagHelper para enviar exibir um link para enviar email
- Criar pasta TagHelpers
- Criar classe EmailTagHelper
- Sobrescrever o método Process

31a. Definindo uma nova rota na aplicação - duração 13:29 minutos
- Redefinir a view List e retornar lanches por categoria
- Alterando o método List do controlador LancheController e incluindo a categoria
- Criando uma rota e incluindo as categorias como parâmetro na rota
- Usando MapRoute : name , url e default
- Criando a rota no arquivo Configure da classe Startup

32a. Criando um ViewComponent para exibir novos itens de Menu - duração 6:40
- Criando uma ViewComponent para exibir no menu Lanches as opções para listar os lanches por categoria
- Criar classe CategoriaMenu na pasta Components
- Criar View Default na pasta Shared/Components/CategoriaMenu
- Usar a ViewComponent no arquivo _Layout

33a. Exibindo detalhes de um Lanche - duração 8:27
- Criando um link na exibição dos lanches para ver detalhes do lanche
- Definir botão para incluir lanche no carrinho de compras
- Ajustar a partial _LancheResumo
- Criar método Details no controller LancheController para obter detalhes do lanche
- Criar a View Details para exibir detalhes do lanche

34a. Expandido o modelo de domínio - duração 13:26 minutos
- Criando novas classe de domínio para gerenciar pedidos
- Criar as classe Pedido e PedidoDetalhe
- Definir o mapeamento na classe de contexto AppDbContext
- Atualizar o esquema do banco de dados usando Migrations

35a. Criando o repositório para os pedidos - duração 6:51 minutos
- Criando a interface IPedidoRepository
- Implementando a interface na classe PedidoRepository
- Registrar o serviço no método ConfigureServices

36a. Procurando Lanches -  duração 7:17 minutos
- Incluindo na barra de navegação a busca de lanches por nome
- Definir um formulário com input text no arquivo _Layout
- Criar o método Action Search no controlador LancheController
- Retornando o resultado na view List

37a. Criando o controlador PedidoController - duração 15:46
- Criando o controlador PedidoController
- Referenciar os repositórios PedidoRepository e CarrinhoCompra 
- Criar o método Action Checkhou (GET e POST)
- Criar a view Checktout :  formulário de confirmação do pedido
- Criar o método Action CheckoutCompleto

38a. Autenticação e Autorização - duração 4:56 minutos
- Conceitos de autenticação e autorização
- Template de projeto para implementar a autenticação
- A implementação da autenticação do template do VS 2017
- Os controladores, ViewModels e Views criadas pelo template
- A migração criada para criar o banco de dados e as tabelas

39a. Usando o Identity - duração 8:50 minutos
- Configurando a aplicação para usar o Identity
- Apresentando o Identity da ASP .NET Core MVC 
- Pacotes necessários para usar o Identity
- Alterando a classe de contexto para herdar de IdentityDbContext
- Configurar os serviços : services.AddIdentity<>();
- Ativar o middleware :  app.UseAuthentication();

40a. Implementando o Login - duração 8:52 minutos
- Criar o controlador AccountController
- Referenciar : UserManager<T> e SignInManager<T>
- Criar a view model LoginViewModel
- Criar o método Action Login(GET e POST)

41a. Implementando o Registro - duração 5:30 minutos
- Criar o método Action Register(GET e POST)
- Usar o filtro ValidateAntiForgeryToken
- Explicando como funciona o ValidateAntiForgeryToken
- Criar o método Action Logout(HttpPost)

42a. Criando as Views Login e Register - duração 9:28
- Criar a view Login.chstml
- Criar a view Register.chstml
- Criar a view Logout.chstml
- Criar a partial view _LoginPartial na pasta Shared
- Ajustar o código do arquivo _Layout

43a. Implementando a Autorização - duração 8:14 minutos
- Usando o atributo Authorize : conceitos
- Verificar a autenticação via código :  IsAuthenticated
- Verificar a autenticação usando o atributo Authorize
- O atributo AllowAnonymous :  permitindo o acesso anônimo

44a. Apresentando Areas - duração 7:50 minutos
- Apresentando Areas : conceitos
- Quando usar Areas
- Características das Areas
- Exemplo de estrutura de um projeto com Areas
- O atributo [Area("")] usado nos controllers
- Criando a rota usando areaRout: {area:exists}

45a. Usando Areas : criando uma área de Administração - duração 12:07 minutos
- Criando um pasta Areas no projeto
- Definindo a área Admin
- Criar a pasta Controllers,  Views e Shared
- Criando o controlador AdminController e a view Index
- Criar os arquivos _ViewImports e _ViewStart na pasta Views
- Definindo a rota no arquio Startup
- Definindo um novo arquivo _Layout usado na área Admin
 
46a. Área de administração :  gerenciando pedidos, lanches e categorias - duração 12:20 minutos
- Criando os controladores para gerenciar pedidos, lanches e categorias
- Usando o Scaffolding para gerar os controladores e as views
- Criando o controlador AdminCategoriasController e suas Views
- Criando o controlador AdminLanchesController e suas Views
- Criando o controlador AdminPedidosController e suas Views
- Fazendo os ajustes nas views e a tradução dos textos

Curso ASP .NET Core MVC - Crie um site do Zero
R$50,00 R$40,00
Quantidade
Curso ASP .NET Core MVC - Crie um site do Zero R$40,00

Curso ASP .NET Core MVC
Criando um Site do Zero (Venda de Lanches)
46 Vídeo Aulas (Assista a Apresentação)
Conteúdo e duração de cada vídeo aula

1a. Introdução - duração 5:40 minutos
- Objetivo do curso
- Ferramentas usadas
- Pré-requisitos necessários
- Dúvidas ? Como fazer

2a. Apresentação do site de Venda de Lanches - duração 7:04 minutos
- Apresentação da aplicação : Venda de Lanches online
- Principais Funcionalidades
- Página de lanches, carrinho de compras, área de adminstração

3a. Ferramentas usadas no curso - duração 5:05 minutos
- Ambiente Windows 
- Ambiente Linux e MacOs
- Visual Studio 2017 Community
- SQL Server
- SQL Server Management Studio

4a. Criando o Projeto  - duração 8:22 minutos
- Criando o projeto no VS 2017 Community
- Template Web Application (Model-View-Controller)
- Estrutura do projeto

5a. Apresentando o padrão MVC - duração 12:09 minutos
- O padrão MVC : Model , View, Controller
- Controladores e métodos Action e URL
- Fluxo de atendimento de requisições
- Entendendo como funciona o MVC

6a. Funcionamento do projeto - duração 11:17 minutos
- Startup : Serviço MVC, 
- Verificando o ambiente de trabalho
- Rota padrão :  Metódo Configure do arquivo Startup
- Arquivo de _Layout e projeto

7a. Criando o Modelo de Domínio - duração 10:13 minutos
-  Modelo de domínio : Lanche e Categoria
-  Usando a Abordagem Code-First
-  Entity FrameworkCore 2.0

8a. Entity Framework Core -  duração 7:32 minutos
- Apresentando o EF Core
- Ferramente ORM - Mapeamento objeto relacional
- DbContext e DbSet e LINQ
- DataBaseFirst e Code First

9a. Configurando o EF Core - duração 13:18 minutos
- Referencia aos pacotes do EF Core via Nuget
- Definindo a classe de Contexto : DbContext
- Definindo as entidades com DbSet
- Registrar contexto como serviço : Startup
- Definindo a string de conexão no arquivo appsettings.json

10a. Data Annotations - duração 3:01 minutos
- Validando o modelo com Atributos Data Annotations
- Principais atributos : Required, Display, StringLenght, DataType

11a. Usando Migrations - duração 11:31
- Gerenciando o versionamento do banco de dados
- add-migration - gerando o script da migração
- update-database - aplicando o script e atualizando o banco de dados
- Criando o banco de dados e as tabelas Lanches e Categorias
- Ajustando o esquema usando DataAnnotations

12a. Populando o banco de dados com Migrations - duração 11:11 minutos
- Populando as tabelas com dados via Migrations
- Criando uma migração: Os métodos Up() e Down()
- Usando o método MigrationBuilder.Sql() para definir comandos SQL

13a. Apresentando o padrão Repository - duração 4:44
- O conceito do padrão Repository : Desacoplando a camada de acesso a dados
- Centralizando as consultas em um Repositório
- Vantagens do padrão Repository

14a. Implementando o padrão Repository - duração 15:46  minutos
- Definindo as interfaces ICategoriaRepository e ILancheRepository
- Implementando o repositórios : CategoriaRepository e LancheRepository
- Registrar os serviços do repostórios para realizare a injeção de dependência
- services.AddTransient<Interface,implementação>

15a. Criando o Controlador e a View para exibir lanches - duração 14:52 minutos
- As convenções usadas com o Controller. Como criar um Controller
- Criando um controlador : LanchesController
- Referenciando os repositórios no Controlador
- Retornando uma lista de lanches. Usando ViewBag e ViewData.
- Criando uma view razor List.cshtml usando o Scaffolding

16a. Ajustando o código da view List - duração 6:14 minutos
- Ajustando o código da View List.cshtml
- Definindo um model na View: @model
- Definindo o código Razor para exibir dados dos lanches

17a. Os arquivos _ViewStart e _ViewImports e BootStrap - duração 6:14 minutos
- _ViewStart - definindo o arquivo de layout usado
- _ViewImports - definindo os namespaces e as taghelpers
-  Bootstrap - Aplicando estilos e melhorando a aparência da aplicação

18a. ViewModel - Conceito - duração 2:42 minutos
- Apresentando o conceito de ViewModel
- Separando a lógica da View em uma ViewModel
- Benefícios da ViewModel

19a. Implementando o padrão ViewModel - duração 8:44 minutos
- Criando a viewmodel LancheListViewModel
- Definindo a lógica da View em LancheListViewModel
- Ajustando o controlador para usar a View Model criada e exibir os lanches

20a. Apresentando Partial Views - duração 5:28 minutos
- Partial View - view renderizada em outra view
- Encapsula a lógica usada nas views
- Permite reutilizar o código de uma view em outras views
- As partials Views não possuem layout
- Invocando partial views : @Html.Partial("NomeView", model),  RenderPartial

21a. Implementando Partial Views - duração 4:47  minutos
- Criando uma partial view para exibir lanches
- Criando a partial View _LanchesResumo na pasta Shared
- Renderizando a partial na View List.chstml

22a. Carrinho de Compras - duração 7:38  minutos
- Implementar a classe CarrinhoCompraItens
- Definir o DbSet<> na classe de contexto AppDbContext
- Usar o Migrations para atualizar o esquema do banco de dados
- Criar a tabela CarrinhoCompraItens usando Migrations

23a. Session e o estado da aplicação - duração 5:09  minutos
- Apresentando Session : conceitos
- Usando Session : Microsoft.AspNetCore.Session
- Configurando a Sessão
- Definir cache de memória : MemoryCache
- Usar a Session : AddSession()
- Ativar o middleware :  services.UseSession()

24a. Implementando o Carrinho de Compras - duração 16:32
- Criando a classe CarrinhoCompra
- Métodos do Carrinho:  incluir lanche, remover lanche, obter carrinho, limpar carrinho
- Definir serviço para obter carrinho da Session : IHttpContextAcessor
- Registrando um serviço para obter o carrinho da sessão

25a. Implementando o controller do Carrinho de Compras - duração 15:25  minutos
- Criar o controller CarrinhoCompraController
- Definir métodos Action para:  Apresentar o carrinho, incluir e remover itens do carrinho
- Definir a View Index para apresentar o carrinho

26a. Criando a página inicial - Lanches Preferidos  - duração 12:25 minutos
- Aproveitando o código do controlador HomeController
- Ajustando o código da Action Index para obter os lanches preferidos
- Criando a view model HomeViewModel para usar como model na View Index
- Criando uma partial view para exibir o carousel com imagens de lanches
- Criar a View Index para exibir os lanches preferidos

27a. Apresentando as ViewComponents - duração 5:04  minutos
- ViewComponents : conceitos
- Como funcionam as ViewsComponents
- Como criar e usar uma ViewComponent

28a. Implementando uma ViewComponent - duração 11:52  minutos
- Criar uma View Component para exibir a quantidade de itens do carrinho
- Criar a pasta Components e a classe CarrinhoCompraResumo
- Definir o código do método Invoke()
- Criar a View Default.cshtml

29a. Apresentando as TagHelpers - duração 6:17  minutos
- TagHelpers : Conceitos
- Como funciona e como usar 
- Principais taghelpers : asp-for, asp-controller, asp-action

30a. Criando uma TagHelper - duração 9:59  minutos
- Criando uma TagHelper para enviar exibir um link para enviar email
- Criar pasta TagHelpers
- Criar classe EmailTagHelper
- Sobrescrever o método Process

31a. Definindo uma nova rota na aplicação - duração 13:29 minutos
- Redefinir a view List e retornar lanches por categoria
- Alterando o método List do controlador LancheController e incluindo a categoria
- Criando uma rota e incluindo as categorias como parâmetro na rota
- Usando MapRoute : name , url e default
- Criando a rota no arquivo Configure da classe Startup

32a. Criando um ViewComponent para exibir novos itens de Menu - duração 6:40
- Criando uma ViewComponent para exibir no menu Lanches as opções para listar os lanches por categoria
- Criar classe CategoriaMenu na pasta Components
- Criar View Default na pasta Shared/Components/CategoriaMenu
- Usar a ViewComponent no arquivo _Layout

33a. Exibindo detalhes de um Lanche - duração 8:27
- Criando um link na exibição dos lanches para ver detalhes do lanche
- Definir botão para incluir lanche no carrinho de compras
- Ajustar a partial _LancheResumo
- Criar método Details no controller LancheController para obter detalhes do lanche
- Criar a View Details para exibir detalhes do lanche

34a. Expandido o modelo de domínio - duração 13:26 minutos
- Criando novas classe de domínio para gerenciar pedidos
- Criar as classe Pedido e PedidoDetalhe
- Definir o mapeamento na classe de contexto AppDbContext
- Atualizar o esquema do banco de dados usando Migrations

35a. Criando o repositório para os pedidos - duração 6:51 minutos
- Criando a interface IPedidoRepository
- Implementando a interface na classe PedidoRepository
- Registrar o serviço no método ConfigureServices

36a. Procurando Lanches -  duração 7:17 minutos
- Incluindo na barra de navegação a busca de lanches por nome
- Definir um formulário com input text no arquivo _Layout
- Criar o método Action Search no controlador LancheController
- Retornando o resultado na view List

37a. Criando o controlador PedidoController - duração 15:46
- Criando o controlador PedidoController
- Referenciar os repositórios PedidoRepository e CarrinhoCompra 
- Criar o método Action Checkhou (GET e POST)
- Criar a view Checktout :  formulário de confirmação do pedido
- Criar o método Action CheckoutCompleto

38a. Autenticação e Autorização - duração 4:56 minutos
- Conceitos de autenticação e autorização
- Template de projeto para implementar a autenticação
- A implementação da autenticação do template do VS 2017
- Os controladores, ViewModels e Views criadas pelo template
- A migração criada para criar o banco de dados e as tabelas

39a. Usando o Identity - duração 8:50 minutos
- Configurando a aplicação para usar o Identity
- Apresentando o Identity da ASP .NET Core MVC 
- Pacotes necessários para usar o Identity
- Alterando a classe de contexto para herdar de IdentityDbContext
- Configurar os serviços : services.AddIdentity<>();
- Ativar o middleware :  app.UseAuthentication();

40a. Implementando o Login - duração 8:52 minutos
- Criar o controlador AccountController
- Referenciar : UserManager<T> e SignInManager<T>
- Criar a view model LoginViewModel
- Criar o método Action Login(GET e POST)

41a. Implementando o Registro - duração 5:30 minutos
- Criar o método Action Register(GET e POST)
- Usar o filtro ValidateAntiForgeryToken
- Explicando como funciona o ValidateAntiForgeryToken
- Criar o método Action Logout(HttpPost)

42a. Criando as Views Login e Register - duração 9:28
- Criar a view Login.chstml
- Criar a view Register.chstml
- Criar a view Logout.chstml
- Criar a partial view _LoginPartial na pasta Shared
- Ajustar o código do arquivo _Layout

43a. Implementando a Autorização - duração 8:14 minutos
- Usando o atributo Authorize : conceitos
- Verificar a autenticação via código :  IsAuthenticated
- Verificar a autenticação usando o atributo Authorize
- O atributo AllowAnonymous :  permitindo o acesso anônimo

44a. Apresentando Areas - duração 7:50 minutos
- Apresentando Areas : conceitos
- Quando usar Areas
- Características das Areas
- Exemplo de estrutura de um projeto com Areas
- O atributo [Area("")] usado nos controllers
- Criando a rota usando areaRout: {area:exists}

45a. Usando Areas : criando uma área de Administração - duração 12:07 minutos
- Criando um pasta Areas no projeto
- Definindo a área Admin
- Criar a pasta Controllers,  Views e Shared
- Criando o controlador AdminController e a view Index
- Criar os arquivos _ViewImports e _ViewStart na pasta Views
- Definindo a rota no arquio Startup
- Definindo um novo arquivo _Layout usado na área Admin
 
46a. Área de administração :  gerenciando pedidos, lanches e categorias - duração 12:20 minutos
- Criando os controladores para gerenciar pedidos, lanches e categorias
- Usando o Scaffolding para gerar os controladores e as views
- Criando o controlador AdminCategoriasController e suas Views
- Criando o controlador AdminLanchesController e suas Views
- Criando o controlador AdminPedidosController e suas Views
- Fazendo os ajustes nas views e a tradução dos textos