20% OFF
Curso ASP .NET Core 2.0

Curso ASP .NET Core 2.0 - Básico/Intermediário Vídeo Aulas ( C# )

156 Vídeo Aulas com Projetos Completos e Atividades Resolvidas
Conteúdo e duração de cada vídeo aula

Módulo 1 - Fundamentos

1a. Introdução - 5:22 min.
- Apresentação do Curso

2a. Apresentação -  12:32 min.
- Apresentação
- Novos Recursos
- Ambiente de Desenvolvimento
- Opções de Desenvolvimento

3a. Configurando o ambiente -  15 min.
- Cenário Atual
- Visual Studio - Opções de templates de projetos
- ASP .NET Core 2.0,  ,NET Core 2.0,  EF Core 2.0 , VS 2017
- Ferramentas de linha de comando : NET CLI
- Visual Studio Code

4a. Estrutura do Projeto VS 2017 - 7:29 min.
- Estrutura do projeto ASP .NET Core no VS 2017
- Startup, ConfigureServices, Configure
- Primiero Projeto ASP .NET Core - Empty

5a. Apresentando o VS Code-   12:19 min.
- Apresentando o VS Code - download
- Principais recursos
- Instalação das Extensões recomendadas
- Ebook grátis sobre VS Code

6a. Estrutura do Projeto - NET CLI - 15:33 min.
- Apresentando a NET CLI
- Templates de projetos e comandos
- Criando um projeto na ferramenta de linha de comando
- Abrindo o projeto no VS Code

7a. Inicialização  -  12:43 min.
- Apresentando o novo processo de inicialização
- Program.Main, Startup, ConfigureServices, Configure
- Middlewares, Serviços, Injeção de dependência
- Proxy reverso, Kestrel

8a. Configuração -  11:24 min.
- O novo modelo de configuração
- API de configuração, para nome:valor no formato  JSON 
- Podemos usar vários formatos de arquivos: padrão é JSON
- Lendo informações de um arquivo de configuração 

9a. Environment -  15:56 min.
- Trabalhando com múltiplos ambientes
- Variável de ambiente : ASPNETCORE_ENVIRONMENT
- Valores padrão : Development, Staging , Production
- Configurando o ambiente; controlando a inicialização

10a. Injeção de Dependência -  4:15 min.
- Apresentando o conceito da Injeção de dependência(ID)
- Framework ASP .NET Core - Contâiner ID
- Como funciona a injeção de dependência(ID)
- Usando a ID na ASP .NET Core

11a. Criando Serviços e usando a ID - 16:50 min.
- Criando serviços usando a Injeção de dependência
- Definindo serviços : Interface e classe de Serviço
- Registrar a interface e os serviços em ConfigureServices
- Injetando os serviços no método Configure

12a.  Arquivos Estáticos -   9:14 min.
- Apresentando arquivos estáticos : css, html, img, js
- Localização : wwwroot
- Acessando arquivos estáticos
- Inserindo o pacote StaticFiles
- Usando o Middleware :  UseStaticFiles();

13a. Acessando Arquivos - 10:43 min.
- Acessando o sistema de arquivos
- Provedores de arquivos - Files Providers
- IFileProvider :  IFileInfo, IDirectoryContents, IChangeToken
- Implementações de IFileProvider

14a. Middleware -  10:08  min.
- Middlewares - Definição e Conceitos
- Como funciona um middleware : pipeline de requisições
- Usando middlewares via interface IApplicationBuilder  
- Método Configure() da classe Startup :  ordem é crítica

15a. Tratamento de erros -  12:36 min.
- Apresentando o tratamento de erros
- Middleware para tratar erros : Microsoft.AspNetCore.Diagnostics
- UseExceptionHandler() - tratamento de erro específico
- UseStatusCodePages() - método para código de status HTTP
- UseStatusCodePagesWithRedirect - redireciona URL

16a. Session -  9:39 min.
- Apresentando Session e o estado da aplicação
- Session - Microsoft.AspNetCore.Session
- Mantém o estado da sessão usando cookies
- Habilitando o middleware: UseSession no método Configure()

17a. Migrando para ASP .NET Core 2.1 -  8:13 min.
- Migrando da ASP .NET Core 2.0 para 2.1
- Atualizando o Framework para 2.1
- Atualizando referência aos pacotes
- Removendo referências desnecessárias
- Ajustando o código

18a. Atividade -  3 vídeo aulas :
- Criando um Middleware :
- Lendo um arquivo de configuração INI
- Fazendo o tratamento de erros

- Exercícios propostos e resolvidos

Módulo 2 - ASP .NET Core MVC

1a. Padrão MVC -  12:09  min.
- Apresentando o padrão MVC - Model, View, Controller
- MVC - Fluxo de requisição e o roteamento
- A implementação MVC na ASP .NET Core MVC
- A convenção sobre configuração

2a. Aplicação ASP .NET Core MVC -  17:37 min.
- Criando uma app ASP .NET Core MVC usando a NET CLI
- Abrindo o projeto no VS 2017 e no VS Code
- Explicando o layout da aplicação
- Como funciona a aplicação MVC
- O serviço e o middleware : Services.AddMvc() e UseMvc()

3a. Controllers - 18:42 min.
- Apresentando o Controller : definição e conceitos
- Pasta Controllers : classes dos controladores
- A convenção de nomes para os Controllers
- Os Controllers e métodos Action
- Como o controller funciona:  o tratamento da requisição
- Criando controllers em uma app no VS 2017
- O Scaffolding e as opções para criar Controllers
- Abrindo o projeto no VS Code:  criando controllers

4a. Ferramenta Watch Tool -  7:03 min.
- Apresentando a ferramenta Watch Tool
- Usando o dotnet Watch no VS Code
- Incluindo Microsoft.DotNet.Watcher.Tools no arquivo .csproj
- Executando : dotnet watch run

5a. IActionResult -   15:24 min.
- Os tipos de retorno de IActionResult nos métodos Action
- Os métodos da classe base Controller e ControllerBase
- Tipos de retorno: ViewResult, ContentResult,JsonResult, etc.
- Alterando o mapeamento padrão

6a. HttpContext -  8:57  min.
- Acessando e usando HttpContext
- O que é o HttpContext
- Acessando direto em Controllers
- Acessando via parâmetros em Middlwares
- Habilitando o HttpContext
- IHttpContextAcessor e HttpContextAcessor
- Usando HttpContext

7a. Métodos Action - Parâmetros -  10:39 min.
- Passando parâmetros para métodos Action
- A convenção usada na passagem de parâmetros
- O roteamento definido no arquivo Startup
- Parâmetros : embutidos na Url, query string, formulários
- Exemplo prático no VS Code

8a. Roteamento -   16:02 min.
- Apresentando o roteamento e o roteamento padrão
- A rota padrão : {controller=Home}/{Action=Index}/{id?}
- A convenção no funcionamento do roteamento
- Cada Requisição é mapeada para uma Action
- A definição das rotas: app.UseMvc(routes => ...)
- O middleware :  app.UseMvcWithDefaultRoute()
- Criando novas rotas no método Configure()

9a. Atributo Routing -  16:05 min.
- Usando o Atributo Route
- Definindo rotas via atributos
- Definir rotas a nível de controlador
- Definir rotas a nível de Action
- Parâmetros opcionais e valores padrão
- Rotas com restrições

10a. Víews -  13:02  min.
- Apresentando as Views
- As views .cshtml e a sintaxe Razor
- A pasta Views e convenção para armazenar as Views
- As views compartilhadas : pasta Shared
- O código Razor usado nas Views
- O arquivo de _Layout  :  cabeçalho e rodapé

11a. ViewData e ViewBag  - 19:42 min.
- Passando dados entre o Controller e a View
- Usando ViewBag, ViewData
- Exemplo prático no VS Code

12a. Model -  17:54 min.
- Apresentando o Model
- Passando dados para a View via model : @model
- Acessando a instância na View : @Model
- Exemplo prático no VS Code

13a. ViewModel - 17:00 min.
- Apresentando ViewModel : conceitos
- Separando as informações e responsabilidades do Model
- Dados e comportamento relacionados com as Views
- Exemplo prático usando ViewModel no VS 2017

14a. ModelBinding -  6:07 min.
- Apresentando o conceito de ModelBinding
- Como o ModelBinding funciona
- Requisição Http:  Rota e Dados
- Identificando Controller e Action e passando os dados
- Usando a convenção de nomes para passar os dados

15a. ModelBinding : Exemplo - 31:19 min.
- Exemplo prática de funcionamento do Model Binding
- Criando um projeto ASP .NET Core MVC
- Definindo o Model, Controller e Views
- Passando os dados via Model Binding
- Projeto criado no VS 2017 - template Web Application

16a. HtmlHelpers -  5:20 min.
- Apresentando os HtmlHelpers
- Sintaxe dos HtmlHelpers
- Principais métodos HtmlHelpers
- Exemplo de funcionamento e utilização

17a. HtmlHelpers : Exemplo - 17:09  min.
- Exemplo de utilização de HtmlHelpers
- Aplicação Asp Net Core MVC no VS 2017
- Usando HtmlHelpers simples e tipados

18a. TagHelpers -  7:05 min.
- Apresentando as TagHelpers
- Definição e Conceito :  Alternativa aos HtmlHelpers
- Apresentando as principais taghelpers
- Habilitando tagHelpers no arquivo _ViewImports.cshtml
- Tag Helper Form e Tag Helper Input

19a. Tag Helpers : Exemplo - 6:44 min.
- Exemplo prático de utilizaão de TagHelpers
- Aplicação Asp Net Core MVC no VS 2017
- Usando as TagHelpers tipadas

20a. Partial Views - 5:30 min.
- Partial Views - definição e conceitos
- Permite reutilização de código
- @Html.Partial("") e Html.RenderPartial("")
- Acessando dados nas Partial Views
- Localizando as partial views

21a.  Partial Views : Exemplo -  13:14 min.
- Exemplo prático de utilização de Partial Views
- Aplicação Asp Net Core MVC no VS 2017
- Criando Partial Views para exibir um menu
- Criando Partial Views para exibir um rodapé

22a. Layout -  14:48  min.
- Apresentando o Layout : conceitos
- A propriedade : Layout
- Os arquivos : _Layout, _ViewStart e ViewImports 
- Apresentando RenderBody : conceito
- Apresentando RenderSection e @section
- Exemplo de funcionamento no VS 2017

23a. ViewComponents -  5:04 min.
- Apresentando View Components : conceito
- Criação de uma View Component
- Usando uma ViewComponent 

24a. View Components : Exemplo - 18 min.
- Criando e usando uma ViewComponent
- Aplicação Asp Net Core MVC no VS 2017
- Usando InvokeAsync e a TagHelper 

25a. Razor Pages - 13:44 min.
- Apresentando Razor Pages
- Requisitos para utilização do recurso
- Usando o template Web Application no VS 2017
- A estrutura de um projeto Razor Page
- Criando Razor Pages usando o NET CLI
- Abrindo o projeto no VS Code

26a. Razor Pages : Exemplo -  24:08 min.
- Criando uma aplicação Razor Pages no VS 2017
- Usando o Entity Framework Core Code First
- Criando um Quadro de Avisos

27a. Razor Class Library - 11:15 min.
- Apresentando Razor Class Library
- Usando o Template de projeto no Vs 2017
- NTE CLI : dotnet new razorclasslib
- A estrutura de um projeto Razor Class Library
- Exemplo de projeto no VS 2017
- Consumindo um projeto RCL

28a. Víew Injection no VS 2017 -  18:57 min.
- Apresentando o recurso View Injection :  conceitos
- Sintaxe usada : @inject <serviço> <nome>
- Modos de vida do serviço injetado 
- Criando o projeto de exemplo no VS 2017

29a. View Injection no VS Code -  14:27 min.
- Exemplo de utilização do View Injection
- Criando o projeto na ferramenta de linha de comando NET CLI
- Usando o template web e criando um projeto vazio
- Abrindo o projeto no VS Code e fazendo os ajustes para MVC
- definindo a View Injection 

30a. Filters conceitos -  9:49 min.
- Definição de filtros
- Como os filtros funcionam
- Tipos de Filtros
- Implementação dos Filtros
- Escopo e ordem de execução

31a. Filters  Exemplo 1 - VS 2017 -  15:45 min.
- Exemplo de implementação de filtros
- Implementando dois ActionFilter
- SaudaFilterAttribute aplicado a Action
- DuracaoActionFilter aplicado globalmente

32a. Filters Exemplo 2 - VS 2017 -  12:55 min.
- Exemplo de implementação de filtros
- Implementado um ActionFilter e um ExceptionFilter
- ValidarModeloAttribute aplicado ao Controller
- TrataExceptionAttribute aplicado globalmente

33a. Areas -  10:10 min.
- Apresentando o conceito de Areas
- Quando usar Areas
- Características das Areas
- Estrutura de um projeto MVC com Areas 
- Usando o atributo : [Area("")] e definindo a rota da Area
- Gerando links para Areas :  TagHelper e/ou HtmlHelper

34a. Areas : Exemplo -  31:22 min.
- Exemplo prático de utilização de Areas
- Usando um projeto ASP .NET Core MVC no VS 2017
- Criando as áreas Admin e Produtos
- Definindo as rotas das áreas
- Usando o atributo [Area("")] no controlador

35a. Atividade - 21:36 min.
- Exibir em uma view uma lista suspensa de paises
- Obter os dados de um banco de dados
- Usar taghelper <select>

Módulo 3 - Acessando Dados

1a. Introdução - 1:12  min.
- Como acessar dados
- Fazer a manutenção de dados
- Usando ADO .NET e Entity Framework
- Abordagem Code-First e DataBase First
- Usar o Migration
- Usar o LINQ para consulta e persistência
- Validando dados com Data Annotation e Fluent API

2a. ADO .NET - 6:56 min.
- Apresentando a ADO .NET
- O DataSet e os provedores .NET
- Connection, Command e DataAdapter
- Cenário tipo de acesso a dados
- Arquitetura ADO .NET

3a. Acessando Dados com ADO .NET -  28:59 min.
- Acessando informações de um banco de dados relacional
- O conceito MVC e a arquitetura em camadas
- Projeto ASP .NET Core MVC no VS 2017
- Usando SQL Server Management Studio
- Criando Banco de dados Escola e tabela Alunos
- Criando modelo de domínio; Usando stored procedures
- Criando camada de negócio : IAlunoBLL e AlunoBLL
- Criando o Controller e a View usando o Scaffolding

4a. Incluindo Dados com ADO .NET -  19:48 min.
- Incluindo dados na tabela Alunos com Ado .NET
- Definindo o método IncluirAluno na camada de Negócio
- Criar a stored procedure para incluir dados no BD
- Criando a Action Create(Get/Post) e a View Create via Scaffold

5a. Validação de dados -  15:46 min.
- Validando dados no cliente ou no Servidor ?
- Usando o ModelState no Controller
- Definindo a lógica de validação
- AddModelError() e ModelState.IsValid

6a. Data Annotations -  13:04 min.
- Validação de dados com Data Annotations
- Usando atributos Data Annotations no modelo de domínio
- Principais atributos de validação
- Exemplo de validação no VS 2017

7a. Editando Dados com ADO .NET -  26:12 min.
- Editando dados da tabela Alunos com ADO .NET
- Criando o método AtualizarAluno() na camada de negócio
- Criar stored procedure para alterar dados no BD
- Criar a Action Edit (Get/Post) e a view Edit.cshtml via Scaffolding

 

8a. Customizando o ModelBind -  11:59 min.
- Customizando o comportamento do Model Binding
- Usando atributos : Bind, BindRequired, FromBody, FromRoute
- Exemplo de utlização no VS 2017

9a. Deletando dados com ADO .NET -  min.
- Deletando dados da tabela Alunos com ADO .NET
- Criando o método DeletarAluno() na camada de negócio
- Criar stored procedure para alterar dados no BD
- Criar a Action Delete(Get/Post) e a view Delete.cshtml

10a. Deletar dados usando JavaScript - 7:22  min.
- Solicitando a confirmação de exclusão com JavaScript
- Apresentando a janela de confirmação para excluir
- Usando o HtmlHelper Html.BeginForm

11a. Exibindo detalhes com ADO .NET -  9:23 min.
- Exibindo detalhes de um aluno com ADO .NET
- Usndo o método getAlunos() na camada de negócio
- Criar a Action Details(Get) e a view Details.cshtml

12a. Procurar e Filtrar dados com ADO .NET - 15:10 min.
- Localizando e filtrando dados com ADO .NET
- Criando um formulário de pesquisa : @Html.BeginForm()
- Criar a Action Procurar() e a view Procurar.cshtml
- Usar o método getAlunos()  

13a. Exibindo Imagens  22:07 min.
- Exibindo imagens nos detalhes de um Aluno
- Usando a Action Details
- Alterando a View Details para exibir uma imagem
- Alterar a estrutura da tabela Aluno: Foto e Texto
- Alterar a estrutura das stored procedures
- Alterar os métodos da camada de negócio
- Muito trabalho : melhor usar Entity Framework.

14a. AntiForgery Token -  4:59 min.
- Apresentando o AntiForgey Token
- Prevenindo o ataque cross site 
- Usando o recurso : [ValidateAntiForgeryToken]  na Action
- Usar @Html.AntiForgeyToken na View
- Como funciona

15a. Entity Framework Core -  7:43  min.
- Apresentando o Entity Framework Core 2.0
- Ferramenta ORM : Mapeamento dados/objeto
- EF Core multiplataforma e open source
- Como o Entity Framework funciona :  DbContext e DbSet
- LINQ - Language Integrated Query
- Abordagens :  Code-First e Database First

16a.  Usando o EF Core 2.0 - 18:23 min.
- Usando o EF Core 2.0
- .NET Core SDK 2.0 instalado e VS 2017 Community 15.3.3
-  Referenciando o EF Core no projeto via Nuget
- Abordagem Code-First : partindo do modelo de domínio
- Criando a classe de Contexto
- Definindo a string de conexão do banco de dados
- Registrando o Contexto como um serviço

17a. EF Core Migrations -  12:18 min.
- Usando Migrations do EF Core 2.0
- Gerando o banco de dados e as tabelas com o Migrations
- add-Migration, remove-migration e update-database
- Aplicando o Migrations

18a. Alimentando o Banco de Dados -  9:32 min.
- Alimentando as tabelas com dados de teste usando o Migrations
- Apresentando o arquivo ModelSnapshot que representa o esquema atual
- Criando o Migration para alimentar o BD
- Usando os métodos Up() e Down()
- Usando o comando SQL INSERT INTO para incluir dados
- Usando o comando SQL DELETE  FROM para reverter 

19a. Criando Controllers e View com Scaffolding -   12:56 min.
- Criando o Controller, os métodos Actions e as Views
- Habilitando o Scaffolding
- Selecionando as opções de Scaffolding para MVC
- Criando o Controller com Actions e Views usando o EF Core 
- Definindo a classe do modelo e do contexto
- Definindo as Views, o Layout e o nome do Controller

20a. Consultar dados com LINQ - EF Core  - 13:25 min.
- Criando um novo Controlador - TesteController
- Registrando a instância do contexto como um serviço
- Injetar o serviço no construtor do Controller 
- Definir um método Action Index
- Definir uma consulta LINQ para retorna dados do contexto
- Cria a view Index.cshtml para exibir a lista de alunos
- Usando o template List

21a. Adicionando dados com EF Core - 13:45 min.
- Criando as Action Create(Get/Post)
- Definir o atributo Bind e usar ValidateAntiForgeryToken
- Criar a View Create.cshtml usando o Scaffolding
- Incluindo dados com EF Core: Add(), AddRange()
- Incluir objeto no contexto e usar SaveChanges()

22a. Editar dados com EF Core -  21:03 min.
- Criando as Action Edit(Get/Post)
- Definir o atributo Bind e usar ValidateAntiForgeryToken
- Criar a View Edit.cshtml usando o Scaffolding
- Alterar dados com EF Core: Update(objeto)
- Alterar o objeto no contexto e usar SaveChanges()

23a. Deletar dados com EF Core -  15:55 min.
- Criando as Action Delete(Get/Post)
- Definir o atributo Bind e usar ValidateAntiForgeryToken
- Criar a View Delete.cshtml usando o Scaffolding
- Excluir  dados com EF Core: Remove(objeto)
- Excluir o objeto do contexto e usar SaveChanges()

24a. Exibindo Detalhes com EF Core - 8:05 min.
- Criando a Action Details(Get)
- Criar a View Details.cshtml usando o Scaffolding
- Resumo do CRUD com EF Core 2.0

25a. Alterando o modelo de entidades - 17:58 min.
- Alterando o modelo de domínio : incluindo propriedades
- Incluindo as propriedades Foto e Texto
- Definir as restrições usando Data Annotations
- Aplicar o Migrations
- Incluir uma nova entidade : TipoSocio
- Definir as propriedades e aplicar o DataAnnotations
- Definir o relacionamento entre as tabelas

26a. Exibindo dados Relacionados -  17:39 min.
- Exibindo dados de entidades relacionadas
- Usando as propriedades de navegação para carregar dados
- Usando o Eager Loading
- Carregando dados dos Alunos e TipoSocio

27a. Fluent API -  11:04 min.
- Apresentando Fluent API
- Validando entidades com Fluent API
- Definindo o mapeamento e configuração em OnModelCreating
- Vantagens da Fluent API
- Principais recursos da Fluent API

28a. Fluent API - Exemplo -  25:10 min.
- Fluent API - métodos para configurar Tipos e propriedades
- Configurando relacionamentos com Fluent API
- Relacionamento um-para-um e um-para-muitos
- Exemplo prático usando o VS 2017 Community

29a. EF Core Database First -  20:00  min.
- Apresentando a abordagem DataBase First
- Partindo do banco de dados e as tabelas
- Gerando as entidades e o contexto
- Referenciando o Ef Core 2.0 no projeto no VS 2017
- Fazendo a engenharia reversa do banco de dados e tabelas

30a. EF Core Code First usando NET CLI -  28:22 min.
- Criando aplicação ASP .NET Core com EF Core no Linux/Mac   
- .NET Core SDK e VS Code com NET CLI 
- Referenciar o EF Core 2.0 no projeto : dotnet add package
- Criar o projeto mvc usando a ferramenta NET CLI : dotnet new
- Abrindo o projeto no VS Code
- Definir o modelo de domínio e a classe de contexto
- Definjir a string de conexão e aplicar o Migration

31a.  EF Core Code First usando NET CLI  II -   16:45 min.
- Populando as tabelas com MIgrations
- Registrar e configurar o contexto no Startup
- Criar o controller e injetar o serviço do contexto no construtor
- Criar o método Action Index
- Criar a View Index

32a. EF Core Database First usando NET CLI-  21:43 min.
- Aplicação ASP .NET Core com DataBase First usando NET CLI
- Partindo do banco de dados e as tabelas
- Gerando as entidades e o contexto
- Referenciando o Ef Core 2.0 no projeto no NET CLI
- Fazendo a engenharia reversa do banco de dados e tabelas
- Abrindo o projeto com o VS Code

33a. Usando a Paginação de dados -  14:38 min.
- Realizando a paginação de dados na ASP .NET Core MVC c/EF Core
- Usando o pacote : ReflectionIT.Mvc.Paging
- Paginação : incluir serviço services.AddPaging()
- Definir a paginação no método do Controller
- Alterar a view incluindo o namespace as taghelpers

34a. Atividade -  21:46 min.
- Criar solução ASP .Net Core MVC e referenciar o EF Core no projeto;
- Definir um modelo de entidades com propriedades e associações-
- Definir a sua classe de contexto com respectivos DbSets;
- Definir a validação usando Data Annotations
- Realizar o mapeamento entre as entidades usando a Fluent API;
- Aplicar o Migrations no EF Core
- Registrar o seu contexto no arquivo Startup.cs;
- Criar o controlador com Actions e respectivas views usando o Scaffolding;
- Exibir dados relacionados;

Módulo 4 - Segurança

1a. ASP .NET Core Identity - Introdução - 5:37 min.
- Apresentando a ASP .NET Core Identity
- Implementação da Segurança
- Autenticação e Autorização
- IdentityUser , UserManager, RoleManager 

2a. Usando ASP .NET Core Identity -  27:18 min.
- Usando Identity em uma aplicação ASP .NET Core MVC   
- Criando um projeto mvc com Individual User Accounts
- A estrutura do projeto com Identity
- As referências ao EF Core e as classes do domínio e contexto
- Configuração do Identity e o middleware app.UseAuthentication()
- Usando o Migrations do Identiy

3a. Autenticação e Autorização com Identity -  26:40 min.
- Criar projeto ASP .NET Core MVC com Individual User Accounts
- Gerenciando informações de Contatos
- Criando o modelo de domínio
- Definindo o DbSet na classe de contexto ApplicationDbContext
- Aplicando o Migrations para gerar o banco de dados e tabelas
- Aplicando a Autenticação : Login e Register
- Aplicando a Autorização usando o atributo Authorize

4a. Fazendo o Login com o Facebook -  17:02 min.
- Fazendo o login usando as credenciais do Facebook
- Criar aplicação no Facebook : AppId e AppSecret
- Habilitar o SSL
- Registrar a AppId e a AppSecret no appsettings
- Configurar o serviço de autenticação usando provedor de terceiros
- Adicionar o serviço do Facebook em ConfigureServices

5a. Usando a ferramenta Secret Manager -  11:12  min.
- Armazenando informações confidenciais com o Secret Manager
- Armazenando as informações do AppId e AppSecret
- Referenciar o pacote :  Microsoft.Extensions.SecretManager.Tools
- Incluir o node <UserSecretsId>
- Criar o arquivo secrets.json
- Acessar as informações : dotnet user-secrets -h

6a. Alterar a configuração padrão do Identity -  13 min.
- Alterando a configuração padrão do Identity
- Politicas de senha, bloqueio do usuário, configurações de login
- Validações de usuário, configurações de cookies
- Usar o método ConfigureServices() : services.AddIdentity(options)
  
7a. Gerenciando Roles - 14:10 min.
- Tratar Autorização com Roles : perfil de um usuário
- Verificação de autorização usando Role e Authorize
- Exemplo prático com VS 2017 

8a. Gerenciando Roles via código - 20:42 min.
- Gerenciamento de Roles e verificação de perfis de usuário
- Definindo Roles ao usuário no código   
- Verificando os perfis com Authorize

9a Usando Identity com NET CLI -  11:52
- Usando a Autenticação e Autorização com Identity no NET CLI
- Criando um projeto mvc com autenticação : dotnet mvc -auth Individual
- Aplicando o Migrations : dotnet ef migrations add <nome>

10a. Claims - 18:07 min.
- Apresentando Claims : definição e conceitos
- Autorização baseda em Claimns
- ClaimsPrincipal : lista de claims do usuário atual
- User.Clamins, AddClaim; Adicionando verificações de claims
- AddPolicy(), Authorize(Policy="")

11a. Claims : Exemplo  - 25:54 min.
- Exemplo de autorização baseada em Claims
- Aplicação ASP.NET Core com autenticação
- Incluir Claim no usuário registrado
- Verificar a autorização no controller: Authorize(Policy="")

12a. Segurança em Web API - duração 20:33  min.
- Implementando a segurança em uma Web API
- Identity, provedores externos, autorização baseada em Token
- JWT - JSON Web Tokens
- Usando Identity

13a. Segurança em Web API  II - duração 26:36  min.
- Implementando a segurança em uma Web API
- Usando Identity
- Definindo as ViewModels
- Criando o Controller e os métodos Action
- Definindo as views para registro e login
- Verificando a autenticação :  Authorize 

14a. Apresentando CORS -  12:30 min.
- Apresentando o CORS : conceitos
- Cross Origin Resource Sharing
- Permitindo requisições Ajax de origem cruzada
- Como funciona ; Configurando CORS
- Usando o middleware CORS

15a. Autenticação via Cookies -  5:00 min.
- Apresentando a autenticação via Cookies  (Sem Identity)
- Configuração da autenticação via cookies
- AddAuthentication e AddCookie
- Definir o esquema de autenticação
- Invocar o middleware : UseAuthentication()
- Definir CookieAuthenticationOptions na configuração do serviço

16a. Autenticação via Cookies : Exemplo -  20:51 min.
- Autenticação via Cookies na ASP .NET Core mvc no VS 2017
- Definir o modo de autenticação no serviço : AddAuthentication()
- Definir as opções de autenticação
- Definindo a classe LoginViewModel: usuario e senha
- Criar o controller e o método Action Login
- Validar o Login e definir as claims do usuário
- Validar a autorização : Authorize()

17a. JWT - JSON Web Tokens -  10:18 min.
- Apresentando JSON Web Tokens
- Definição e Conceitos
- Como funciona a JWT : processo de autenticação
- Estrutura de um Token JWT

18a. JWT - JSON Web Tokens: Exemplo - 27:52 min.
- Usando JSON Web Tokens para autenticar uma Web API
- Criar projeto ASP .NET Core Web API no VS 2017
- Criar ViewModel LoginViewModel
- Criar Controller AccountController
- Criar View Login e controlador TokenController
- Implementar a autenticação e geração do token no Startup
- Aplicar Authorize e testar no Postman

19a. Identity 2.1 - Introdução -  9:35 min.
- Apresentando o novo Identity da .NET Core 2.1
- O Identity fornecido como uma Razor Class Library
- O que mudou ?
- A estrutura da aplicação com Identity 2.1

20a. Identity 2.1 - Customização -  7:58 min.
- Como customizar uma aplicação Identtiy 2.1
- Fazendo o Scaffold dos recursos
- Add Scaffold -> Identity
- A janela Add Identity

21a. Identity 2.1 - Implantando em um novo projeto -  10:53 min.
- Implementando o Identity 2.1 em novo projeto
- Add Scaffold -> Identity
- A janela Add Identity
- Aplicando o Migrations

22a. Identity 2.1 - Usando a NET CLI -  12:28 min.
- Criando um projeto com Identity usando NET CLI
- Configurando o ambiente para customização
- Fazendo  o Scaffold com aspnet-codegenerator

23a. Atividade - 30:37 min.
- Criar aplicação ASP .NET Core e implementar a autenticação via Jwt
- Criar projeto vazio no NET CLI (Sem usar o VS 2017)
- Instalar o pacote System.IdentityModel.Tokens.Jwt
- Habilitar o serviço Mvc e autenticação e configurar o Jwt
- Criar o controlador TokenController e gerar o Token
- Criar página de Login e definir a geração do Token

24a. Atividade - Extra :  2 Aulas - total : 30:24 min.
- Criar aplicação ASP .NET Core MVC com autenticação individual com VS 2017
- Implementar a criação de roles (perfis)
- Atribuir perfil criado a um usuário ao registrar o usuário
- Criar o controlador RoleRontroller
- Criar os métodos Index para listar e Create para criar perfis
- Criar as Views par exibir os perfis
- Ajustar o método Action Register Get e Post
- Ajustar a view Register p/ permitir selecionar o perfil
- Aplicar a autorização baseada em Roles (atributo Authorize) e testar

Módulo 5 - Web API

1a. Introdução - 13:50 min.
- Apresentação Web API - conceitos
- Diferenças entre Web API e MVC
- Na ASP .NET Core Web API e MVC herdam da classe Controller
- Web API - construir serviços HTTP (REST)
- Métodos HTTP : GET, POST , PUT, DELETE

2a. Criando uma Web API  -  15:33 min.
- Criando uma Web API na ASP .NET Core 2.0
- .NET Core 2.0 SDK : VS 2017 ou NET CLI e VS Code
- Criando um projeto Web API no VS 2017
- Apresentando o projeto e sua estrutura 
- Definir URI para acessar o recurso no roteamento
- Acessar os recursos da Web API

3a. Web API Produtos : Padrão Repositório  -  17:13 min.
- Criar uma Web API para gerenciar informações de produtos 
- Definindo os métodos da Web API
- Definir modelo de domínio, Criar repositório e interface
- Usando o padrão repositório

4a. Web API Produtos : Controller - 20:40 min.
- Criando o controller: ProdutosController
- Definindo o roteamento : api/[controller]
- Definir os métodos Action do Controller

5a. Web API Produtos : Postman -  13:50 min.
- Consumindo uma Web API usando o Postman
- Apresentando e instalando o Postman
- Acessando a Web API via Postman
- Testando o GET, PUT,  POST e DELETE

6a. Web API Contatos : EF Core -  22:01 min.
- Criando uma Web API usando o EF Core Code First
- Criar Web API para gerenciar informações de Contatos
- Definir modelo de domínio e classe de contexto
- Registrar o contexto , definir a string de conexão
- Criar o banco de dados usando Migrations
- Criar o controlador ContatosController com métodos Action
- Usar o Scaffolding e a opção API Controller with Actions using EF core

7a. Web API Contatos : EF Core : Postman  9:28 min.
- Consumindo a Web API usando o Postman
- Acessando a Web API via Postman
- Testando o GET, PUT,  POST e DELETE

8a. Web API : Consumir com MVC -  18:16 min.
- Consumindo a Web API ContatosController em uma app MVC
- Criando o controlador MVC TesteController para consumir a Web API
- Definir o método Action Index para acessar a Web API

9a. Web API : Consumir com MVC II -  31:03 min.
- Definindo os demais métodos do controller MVC TesteController
- Definir os métodos Action Create, Edit, Delete
- Definir as Views usando o Scaffolding 

10a. Web API : Consumir com JavaScript (jQuery) -  18:42 min.
- Consumindo a Web API definida em ContatosController com JavaScript
- Criar controlador HomeController
- Criar view Index e referenciar o JQuery
- Definir o código JQuery
- Ajustar o projeto :  _ViewStart, _ViewImports e _Layout
- Definir o roteamento e consumir a Web API

11a. Criar WEB API Tarefas no NET CLI e VS Code - 14:00 min.
- Definir serviços da Web API Tarefas
- Requisitos: ,NET Core SDK , NET CLI e VS Code
- Criar projeto web api usando NET CLI e VS Code
- Referenciar o Entity Framework Core no projeto

12a. Criar WEB API Tarefas no NET CLI e VS Code II -  25:14 min.
- Definir o modelo de domínio Tarefa e a classe de Contexto
- Definir a string de conexão no arquivo appsettings.json
- Registrar o contexto como um serviço
- Aplicar o migrations : dotnet ef migrations add
- Popular a tabela usando o MIgrations
- Criar o controller TarefaController
- Definir o método Action para retornar todas as tarefas

13a. Criar WEB API Tarefas no NET CLI e VS Code III - 17:48 min.
- Definir os demais métodos Action para acessar a Web API
- Consumindo a Web API
- Usando o dotnet watch

14a. Web API - Documentação com Swagger -  12:48  min.
- Gerando a documentação para Web API com Swagger
- Apresentando o Swagger : Swashbuckle.AspNetCore
- Adicionar e configurar o Swagger
- Usar o Swagger : http://localhost:XXX/swagger/v1/swagger.json
- Acessar a interface com : http://localhost:xxx/swagger

15a. Atividade  - 28:32 min. e  24:49 min.
- Consumir uma Web API em uma aplicação Windows Forms
- Criar a Web API  ASP . NET CoreProdutosAPI
- Consumir os serviços da Web API
- Criar projeto Windows Forms WFProdutosAPI

Módulo 6 - Front End : Angular

1a. Introdução ao Angular - 20:09 min.
- Integrando a ASP .NET Core com o Angular
- Criando uma aplicação Single Page Application - SPA
- Conceitos de SPA
- Lado do Cliente : Angular , lado do servidor : ASP .NET Core
- Opções de desenvolvimento e requisitos
- Nodejs, NPM, TypeScript, Angular e Angular CLI

2a. Aplicação ASP .NET Core com Angular  -  22:05 min.
- Criar aplicação Integrada ao Angular usando o EF Core
- Usando o template Angular no VS 2017
- Incluir as referências ao Entity Framework Core 
- Criando o Backend : A Web API
- Criar o controlador API com Actions e Views usando o Scaffolding
 
3a. Aplicação ASP .NET Core com Angular  II -  23:15 min.
- Criar o front-end usando o Angular
- Apresentando os componentes do Angular
- Criar a pasta do componente: Cliente
- Criar os arquivos do componente: cliente.component.ts e html
- Ajustar o menu da aplicação e definir as rotas para o clientecomponent

4a. Aplicação ASP .NET Core com Angular  III - 29:50 min.
- Definir o serviço Angular para acessar a Web API
- Definir o serviço para exibir os clientes
- Criando a classe ClienteService em cliente.service.ts
- Definir a lógica do componente para acessar os serviços
- Definir a view do componente para exibir as informações dos clientes 

5a. Aplicação ASP .NET Core com Angular  IV -  28:39 min.
- Definir o serviço para incluir um cliente
- Definir a lógica método no componente para incluir cliente
- Definir da view do componente para exibir o formulário
- Usando os recursos do Angular ReactiveForms, FormGroup

6a. Aplicação ASP .NET Core com Angular  V -  22:44 min.
- Definir o serviço para incluir um editar e deletar um cliente
- Definir a lógica do componente para deletar e editar um cliente
- Definir da view do componente para edição e exclusão

7a.  Single Page Application ou Aplicação Web - 5:59 min.
- Comparando SPA com app web tradicional
- Principais recursos das Single Page Application
- As vantagens e desvantagens de cada abordagem
- Quando usar uma abordagem SPA

8a. Atividade -   23:43 min.
- Integrando uma aplicação ASP .NET Core com Angular
- Usando o micro ORM Dapper
- Criar o Banco de dados e as tabelas
- Criar as stored Procedures
- Definir o serviço da Web API
- Criar a interface e sua implementação
- Criar o backend e a seguir o front-end com Angular

Módulo 7 - Projeto

1a. Fatores que impactam o Projeto - 8:50 min.
- Os principais fatores que impactam o seu projeto ASP .NET Core
- Os requisitos do projeto : as incertezas
- Decompondo os requisitos e definindo a complexidade
- Definindo o tamanho da sua aplicação
- Definindo uma arquitetura de referência
- Escopo, Audiência, Escalabilidade, Confiabilidade e Segurança

2a. Princípios básicos para criar um projeto  -  8:37 min.
- Princípios básicos para criar um projeto robusto
- Separação das responsabilidades
- Encapsulamento 
- Injeção de dependência
- Princípios SOLID
 
3a. Estilos de arquiteturas de projeto -  16:27 min.
- Apresentando estilos de arquiteturas de projeto 
- O desenvolvimento em camadas: benefícios
- Layers ou Tiers : definição
- Arquitetura em 3 camadas : Apresentação, Negócio e Dados
- Benefícios e Problemas
- Arquitetura em Cebola - Onion Archicteture
- As vantagens e desvantagens
- Entendendo MVC e 3 Camadas.

4a. Criando uma aplicação em camadas - 21:25 min.
- Criando uma solução ASP .NET Core MVC no VS 2017
- Criando dois projetos : o projeto Web MVC - Artistas.Web
- O projeto Class Library que será  a camada de acesso dados - Artistas.DAL
- Acessando dados com EF Core Code First no SQL Server
- Referenciando o EF Core no projeto Artistas.DAL
- Definindo o modelo de domínio e a classe de Contexto

5a.  Criando uma aplicação em camadas II -  22:44 min.
- Mapeando as entidades usando a Fluent API
- Criando uma classe Startup e um arquivo json para definir a conexão 
- Registrando o contexto como um serviço na classe Startup
- Aplicando o Migrations para gerar o banco de dados e as tabelas
- Populando as tabelas com dados usando o Migrations

6a. Aplicação ASP .NET Core com Angular  V -  8:21 min.
- Definir a string de conexão no arquivo appsettings no projeto Artistas.Web
- Registrar o contexto como um serviço no projeto Artistas.Web
- Criar o controlador ArtistasController com Actions e Views com EF Core

7a. O padrão Repositório e Unit of Work - 14:17 min.
- Padrão Repositório :  definição e conceitos
- Benefícios do padrão Repositório
- Padrão Unit Of Work : definição e conceitos
- Para que serve o Unit of Work
- Usando corretamente os padrões

8a. Implementando o padrão Repositório e Unit of Work -  20:18 min.
- Implementando o padrão repositório e unit of work no projeto em camadas
- Desacoplando a camada de acesso a dados do Entity Framework
- Definindo o Repositorio e a UnitOfWork no projeto Artistas.DAL
- Criando o Repositório genérico e o repositório específico

9a. Implementando o padrão Repositório e Unit of Work  II -  21:21 min.
- Registrando o serviço para a UnitOfWork  no projeto Web
- Criando o controlador mvc TesteControler acessando o repositório
- Definindo os métodos Action e acessando via UnitOfWork o repositório
- Criando as Views para os Métodos Action

10a. Deploy -  21:28 min.
- Apresentando os conceitos de Deploy na ASP .NET Core
- Deploy em múltiplos ambientes usando o VS 2017 ou o NET CLI
- Publicar o aplicativo em uma pasta no servidor
- Configurar um gerenciandor de processo
- Configurar um proxy reverso

11a. Deploy no Azure App Service - 15:56 min.
- Fazendo o deploy 
- Criar conta gratuita no Azure
- Deploy de projeto ASP .NET Core com EF Core e SQL Server e Segurança
- Fazendo o deploy usando o VS 2017 - opção Publish
- Microsoft Azure App Service - Create New

12a. Atividade - 16:52
- Usando a NET CLI e o VS Code criar uma solução e dois projetos
- Crie uma pasta chamada Artistas para conter os projetos e a solução
- Na pasta Artistas crie uma solução chamada Artistas.sln
- Na pasta Artistas crie um projeto do tipo Class Library com o nome Artistas.DAL
- Na pasta Artistas crie um projeto MVC com o nome Artistas.Web
- Inclua uma referência no projeto Artistas.Web ao Projeto Artistas.DAL
- Inclua as referência ao EF Core no projeto Artistas.DAL

Módulo 8 - Bônus

1a. Enviando Email com ASP .NET Core – parte 1  4:51 min.
       Enviando Email com ASP .NET Core – parte 2  18:44 min.


- Enviando email via SMTP usando a conta do GMAIL
- Criar projeto ASP .NET Core MVC no VS 2017 Community
- Definir as configurações para o Servidor SMTP no arquivo appsettings.json
- Criando a classe de domínio EmailSettings
- Registrando a classe no método ConfigureServices da classe Startup
- Criar um serviço para enviar email : criar a interface IEmailSender e a classe concreta
- Registrar o serviço para envio de email no método ConfigureServices da classe Startup
- Criar um Controller para enviar e-mails e injetar o serviço no controlador
- Configurar a conta do Gmail

2a. Criando Gráficos com GoogleChart 15:15 min.

- Criar projeto ASP .NET Core MVC no Visual Studio Code
- Referenciando a biblioteca do GoogleChart no projeto;
- Criando a classe de domínio PopulacaoModel;
- Criando a classe de serviço : PopulacaoService();
- Criando o controller PopulacaoController;
- Crir a view para renderizar o gráfico;
- Usar os recursos do GoogleChart e definir o gráfico de barras e de linha;

3a. Gerando PDF com Rotativa 15:50 min.

- Gerando arquivos PDF usando a biblioteca Rotativa.AspNetCore
- Criar projeto via linha de comando usando a NET CLI  e usando o VS Code
- Criar a pasta Rotativa dentro da pasta wwwroot do projeto
- Copiando os arquivos wkhtmltopdf.exe e wkhtmltoimage.exe na pasta
- Configurando a biblioteca no projeto no método Configure() da classe Startup
- Criar o controlador e usar o método ViewAsPdf() para gerar PDF a partir das Views
- Criando alguns exemplo de geração de PDF

4a. Salvando e Exibindo imagens no banco de dados SQL Server 1 –  9:18 min.
Salvando e Exibindo imagens no banco de dados SQL Server 2 – 22:32 min.


- Criar projeto ASP .NET Core MVC no VS 2017 Community
- Acessar banco de dados Estudo.mdf/tabela Filmes c/campo Imagem do tipo varbinay(MAX)
- Criar a classe Filme com a propriedade Imagem to tipo array de bytes (byte[])
- Criar a classe de contexto FilmesDbContext e definir o DbSet<Filme>
- Definir a string de conexão com o banco de dados no arquivo appsettings.json
- Registrar o contexto no método ConfigureServices() da classe Startup
- Definir o provedor SQL Server e acessar a string de conexão no arquivo appsettings.json
- Criar o Controlador FilmesController com os métodos Index, Create e ExibirImagem
- Definir as views Index e Crerate
- Para enviar imagem no formulário usar o enctype igual a ‘multipart/form-data’
- Usar a interface IFormFile no método Create Post para tratar a imagem enviada

5a. Upload de Arquivos -  15:50 min.
Upload e Download de arquivos - I  - 10:32 min.
Upload e Download de arquivos - II - 14:47 min.
Upload de arquivos com Angular -  12:32 min.


- Criar projeto ASP .NET Core MVC no VS 2017 Community
- Enviar arquivos pequenos para o servidor
- Definir o form HTML na View: método POST, Controller e enctype: multipart/form-data
- Definir o input tipe como file; usar o atributo multiple para enviar mais de um arquivo
- Usar a interface IFormFile e ós métodos nela definidos
- Definir os métodos no Controller para fazer Upload e Download
- Usar a interface IHostingEnvironement
- Usar a interface IFormFile no método Create Post para tratar a imagem enviada

6a. Aplicação Despesas Pessoais -  14:45 min.

- Projeto ASP .NET Core MVC
- ASP .NET Core 2.1
- Entity Framework Core 2.1 - Code-First - Migrations
- SQL Server 2012
- Camada de Acesso a Dados - DAL
- Injeção de dependência Nativa
- Bootstrap, Jquery, HighCharts
- Janelas de diálogos Modais

 

 

 

Curso ASP .NET Core 2.0
R$100,00 R$80,00
Quantidade
Curso ASP .NET Core 2.0 R$80,00

Conheça nossas opções de frete

Curso ASP .NET Core 2.0 - Básico/Intermediário Vídeo Aulas ( C# )

156 Vídeo Aulas com Projetos Completos e Atividades Resolvidas
Conteúdo e duração de cada vídeo aula

Módulo 1 - Fundamentos

1a. Introdução - 5:22 min.
- Apresentação do Curso

2a. Apresentação -  12:32 min.
- Apresentação
- Novos Recursos
- Ambiente de Desenvolvimento
- Opções de Desenvolvimento

3a. Configurando o ambiente -  15 min.
- Cenário Atual
- Visual Studio - Opções de templates de projetos
- ASP .NET Core 2.0,  ,NET Core 2.0,  EF Core 2.0 , VS 2017
- Ferramentas de linha de comando : NET CLI
- Visual Studio Code

4a. Estrutura do Projeto VS 2017 - 7:29 min.
- Estrutura do projeto ASP .NET Core no VS 2017
- Startup, ConfigureServices, Configure
- Primiero Projeto ASP .NET Core - Empty

5a. Apresentando o VS Code-   12:19 min.
- Apresentando o VS Code - download
- Principais recursos
- Instalação das Extensões recomendadas
- Ebook grátis sobre VS Code

6a. Estrutura do Projeto - NET CLI - 15:33 min.
- Apresentando a NET CLI
- Templates de projetos e comandos
- Criando um projeto na ferramenta de linha de comando
- Abrindo o projeto no VS Code

7a. Inicialização  -  12:43 min.
- Apresentando o novo processo de inicialização
- Program.Main, Startup, ConfigureServices, Configure
- Middlewares, Serviços, Injeção de dependência
- Proxy reverso, Kestrel

8a. Configuração -  11:24 min.
- O novo modelo de configuração
- API de configuração, para nome:valor no formato  JSON 
- Podemos usar vários formatos de arquivos: padrão é JSON
- Lendo informações de um arquivo de configuração 

9a. Environment -  15:56 min.
- Trabalhando com múltiplos ambientes
- Variável de ambiente : ASPNETCORE_ENVIRONMENT
- Valores padrão : Development, Staging , Production
- Configurando o ambiente; controlando a inicialização

10a. Injeção de Dependência -  4:15 min.
- Apresentando o conceito da Injeção de dependência(ID)
- Framework ASP .NET Core - Contâiner ID
- Como funciona a injeção de dependência(ID)
- Usando a ID na ASP .NET Core

11a. Criando Serviços e usando a ID - 16:50 min.
- Criando serviços usando a Injeção de dependência
- Definindo serviços : Interface e classe de Serviço
- Registrar a interface e os serviços em ConfigureServices
- Injetando os serviços no método Configure

12a.  Arquivos Estáticos -   9:14 min.
- Apresentando arquivos estáticos : css, html, img, js
- Localização : wwwroot
- Acessando arquivos estáticos
- Inserindo o pacote StaticFiles
- Usando o Middleware :  UseStaticFiles();

13a. Acessando Arquivos - 10:43 min.
- Acessando o sistema de arquivos
- Provedores de arquivos - Files Providers
- IFileProvider :  IFileInfo, IDirectoryContents, IChangeToken
- Implementações de IFileProvider

14a. Middleware -  10:08  min.
- Middlewares - Definição e Conceitos
- Como funciona um middleware : pipeline de requisições
- Usando middlewares via interface IApplicationBuilder  
- Método Configure() da classe Startup :  ordem é crítica

15a. Tratamento de erros -  12:36 min.
- Apresentando o tratamento de erros
- Middleware para tratar erros : Microsoft.AspNetCore.Diagnostics
- UseExceptionHandler() - tratamento de erro específico
- UseStatusCodePages() - método para código de status HTTP
- UseStatusCodePagesWithRedirect - redireciona URL

16a. Session -  9:39 min.
- Apresentando Session e o estado da aplicação
- Session - Microsoft.AspNetCore.Session
- Mantém o estado da sessão usando cookies
- Habilitando o middleware: UseSession no método Configure()

17a. Migrando para ASP .NET Core 2.1 -  8:13 min.
- Migrando da ASP .NET Core 2.0 para 2.1
- Atualizando o Framework para 2.1
- Atualizando referência aos pacotes
- Removendo referências desnecessárias
- Ajustando o código

18a. Atividade -  3 vídeo aulas :
- Criando um Middleware :
- Lendo um arquivo de configuração INI
- Fazendo o tratamento de erros

- Exercícios propostos e resolvidos

Módulo 2 - ASP .NET Core MVC

1a. Padrão MVC -  12:09  min.
- Apresentando o padrão MVC - Model, View, Controller
- MVC - Fluxo de requisição e o roteamento
- A implementação MVC na ASP .NET Core MVC
- A convenção sobre configuração

2a. Aplicação ASP .NET Core MVC -  17:37 min.
- Criando uma app ASP .NET Core MVC usando a NET CLI
- Abrindo o projeto no VS 2017 e no VS Code
- Explicando o layout da aplicação
- Como funciona a aplicação MVC
- O serviço e o middleware : Services.AddMvc() e UseMvc()

3a. Controllers - 18:42 min.
- Apresentando o Controller : definição e conceitos
- Pasta Controllers : classes dos controladores
- A convenção de nomes para os Controllers
- Os Controllers e métodos Action
- Como o controller funciona:  o tratamento da requisição
- Criando controllers em uma app no VS 2017
- O Scaffolding e as opções para criar Controllers
- Abrindo o projeto no VS Code:  criando controllers

4a. Ferramenta Watch Tool -  7:03 min.
- Apresentando a ferramenta Watch Tool
- Usando o dotnet Watch no VS Code
- Incluindo Microsoft.DotNet.Watcher.Tools no arquivo .csproj
- Executando : dotnet watch run

5a. IActionResult -   15:24 min.
- Os tipos de retorno de IActionResult nos métodos Action
- Os métodos da classe base Controller e ControllerBase
- Tipos de retorno: ViewResult, ContentResult,JsonResult, etc.
- Alterando o mapeamento padrão

6a. HttpContext -  8:57  min.
- Acessando e usando HttpContext
- O que é o HttpContext
- Acessando direto em Controllers
- Acessando via parâmetros em Middlwares
- Habilitando o HttpContext
- IHttpContextAcessor e HttpContextAcessor
- Usando HttpContext

7a. Métodos Action - Parâmetros -  10:39 min.
- Passando parâmetros para métodos Action
- A convenção usada na passagem de parâmetros
- O roteamento definido no arquivo Startup
- Parâmetros : embutidos na Url, query string, formulários
- Exemplo prático no VS Code

8a. Roteamento -   16:02 min.
- Apresentando o roteamento e o roteamento padrão
- A rota padrão : {controller=Home}/{Action=Index}/{id?}
- A convenção no funcionamento do roteamento
- Cada Requisição é mapeada para uma Action
- A definição das rotas: app.UseMvc(routes => ...)
- O middleware :  app.UseMvcWithDefaultRoute()
- Criando novas rotas no método Configure()

9a. Atributo Routing -  16:05 min.
- Usando o Atributo Route
- Definindo rotas via atributos
- Definir rotas a nível de controlador
- Definir rotas a nível de Action
- Parâmetros opcionais e valores padrão
- Rotas com restrições

10a. Víews -  13:02  min.
- Apresentando as Views
- As views .cshtml e a sintaxe Razor
- A pasta Views e convenção para armazenar as Views
- As views compartilhadas : pasta Shared
- O código Razor usado nas Views
- O arquivo de _Layout  :  cabeçalho e rodapé

11a. ViewData e ViewBag  - 19:42 min.
- Passando dados entre o Controller e a View
- Usando ViewBag, ViewData
- Exemplo prático no VS Code

12a. Model -  17:54 min.
- Apresentando o Model
- Passando dados para a View via model : @model
- Acessando a instância na View : @Model
- Exemplo prático no VS Code

13a. ViewModel - 17:00 min.
- Apresentando ViewModel : conceitos
- Separando as informações e responsabilidades do Model
- Dados e comportamento relacionados com as Views
- Exemplo prático usando ViewModel no VS 2017

14a. ModelBinding -  6:07 min.
- Apresentando o conceito de ModelBinding
- Como o ModelBinding funciona
- Requisição Http:  Rota e Dados
- Identificando Controller e Action e passando os dados
- Usando a convenção de nomes para passar os dados

15a. ModelBinding : Exemplo - 31:19 min.
- Exemplo prática de funcionamento do Model Binding
- Criando um projeto ASP .NET Core MVC
- Definindo o Model, Controller e Views
- Passando os dados via Model Binding
- Projeto criado no VS 2017 - template Web Application

16a. HtmlHelpers -  5:20 min.
- Apresentando os HtmlHelpers
- Sintaxe dos HtmlHelpers
- Principais métodos HtmlHelpers
- Exemplo de funcionamento e utilização

17a. HtmlHelpers : Exemplo - 17:09  min.
- Exemplo de utilização de HtmlHelpers
- Aplicação Asp Net Core MVC no VS 2017
- Usando HtmlHelpers simples e tipados

18a. TagHelpers -  7:05 min.
- Apresentando as TagHelpers
- Definição e Conceito :  Alternativa aos HtmlHelpers
- Apresentando as principais taghelpers
- Habilitando tagHelpers no arquivo _ViewImports.cshtml
- Tag Helper Form e Tag Helper Input

19a. Tag Helpers : Exemplo - 6:44 min.
- Exemplo prático de utilizaão de TagHelpers
- Aplicação Asp Net Core MVC no VS 2017
- Usando as TagHelpers tipadas

20a. Partial Views - 5:30 min.
- Partial Views - definição e conceitos
- Permite reutilização de código
- @Html.Partial("") e Html.RenderPartial("")
- Acessando dados nas Partial Views
- Localizando as partial views

21a.  Partial Views : Exemplo -  13:14 min.
- Exemplo prático de utilização de Partial Views
- Aplicação Asp Net Core MVC no VS 2017
- Criando Partial Views para exibir um menu
- Criando Partial Views para exibir um rodapé

22a. Layout -  14:48  min.
- Apresentando o Layout : conceitos
- A propriedade : Layout
- Os arquivos : _Layout, _ViewStart e ViewImports 
- Apresentando RenderBody : conceito
- Apresentando RenderSection e @section
- Exemplo de funcionamento no VS 2017

23a. ViewComponents -  5:04 min.
- Apresentando View Components : conceito
- Criação de uma View Component
- Usando uma ViewComponent 

24a. View Components : Exemplo - 18 min.
- Criando e usando uma ViewComponent
- Aplicação Asp Net Core MVC no VS 2017
- Usando InvokeAsync e a TagHelper 

25a. Razor Pages - 13:44 min.
- Apresentando Razor Pages
- Requisitos para utilização do recurso
- Usando o template Web Application no VS 2017
- A estrutura de um projeto Razor Page
- Criando Razor Pages usando o NET CLI
- Abrindo o projeto no VS Code

26a. Razor Pages : Exemplo -  24:08 min.
- Criando uma aplicação Razor Pages no VS 2017
- Usando o Entity Framework Core Code First
- Criando um Quadro de Avisos

27a. Razor Class Library - 11:15 min.
- Apresentando Razor Class Library
- Usando o Template de projeto no Vs 2017
- NTE CLI : dotnet new razorclasslib
- A estrutura de um projeto Razor Class Library
- Exemplo de projeto no VS 2017
- Consumindo um projeto RCL

28a. Víew Injection no VS 2017 -  18:57 min.
- Apresentando o recurso View Injection :  conceitos
- Sintaxe usada : @inject <serviço> <nome>
- Modos de vida do serviço injetado 
- Criando o projeto de exemplo no VS 2017

29a. View Injection no VS Code -  14:27 min.
- Exemplo de utilização do View Injection
- Criando o projeto na ferramenta de linha de comando NET CLI
- Usando o template web e criando um projeto vazio
- Abrindo o projeto no VS Code e fazendo os ajustes para MVC
- definindo a View Injection 

30a. Filters conceitos -  9:49 min.
- Definição de filtros
- Como os filtros funcionam
- Tipos de Filtros
- Implementação dos Filtros
- Escopo e ordem de execução

31a. Filters  Exemplo 1 - VS 2017 -  15:45 min.
- Exemplo de implementação de filtros
- Implementando dois ActionFilter
- SaudaFilterAttribute aplicado a Action
- DuracaoActionFilter aplicado globalmente

32a. Filters Exemplo 2 - VS 2017 -  12:55 min.
- Exemplo de implementação de filtros
- Implementado um ActionFilter e um ExceptionFilter
- ValidarModeloAttribute aplicado ao Controller
- TrataExceptionAttribute aplicado globalmente

33a. Areas -  10:10 min.
- Apresentando o conceito de Areas
- Quando usar Areas
- Características das Areas
- Estrutura de um projeto MVC com Areas 
- Usando o atributo : [Area("")] e definindo a rota da Area
- Gerando links para Areas :  TagHelper e/ou HtmlHelper

34a. Areas : Exemplo -  31:22 min.
- Exemplo prático de utilização de Areas
- Usando um projeto ASP .NET Core MVC no VS 2017
- Criando as áreas Admin e Produtos
- Definindo as rotas das áreas
- Usando o atributo [Area("")] no controlador

35a. Atividade - 21:36 min.
- Exibir em uma view uma lista suspensa de paises
- Obter os dados de um banco de dados
- Usar taghelper <select>

Módulo 3 - Acessando Dados

1a. Introdução - 1:12  min.
- Como acessar dados
- Fazer a manutenção de dados
- Usando ADO .NET e Entity Framework
- Abordagem Code-First e DataBase First
- Usar o Migration
- Usar o LINQ para consulta e persistência
- Validando dados com Data Annotation e Fluent API

2a. ADO .NET - 6:56 min.
- Apresentando a ADO .NET
- O DataSet e os provedores .NET
- Connection, Command e DataAdapter
- Cenário tipo de acesso a dados
- Arquitetura ADO .NET

3a. Acessando Dados com ADO .NET -  28:59 min.
- Acessando informações de um banco de dados relacional
- O conceito MVC e a arquitetura em camadas
- Projeto ASP .NET Core MVC no VS 2017
- Usando SQL Server Management Studio
- Criando Banco de dados Escola e tabela Alunos
- Criando modelo de domínio; Usando stored procedures
- Criando camada de negócio : IAlunoBLL e AlunoBLL
- Criando o Controller e a View usando o Scaffolding

4a. Incluindo Dados com ADO .NET -  19:48 min.
- Incluindo dados na tabela Alunos com Ado .NET
- Definindo o método IncluirAluno na camada de Negócio
- Criar a stored procedure para incluir dados no BD
- Criando a Action Create(Get/Post) e a View Create via Scaffold

5a. Validação de dados -  15:46 min.
- Validando dados no cliente ou no Servidor ?
- Usando o ModelState no Controller
- Definindo a lógica de validação
- AddModelError() e ModelState.IsValid

6a. Data Annotations -  13:04 min.
- Validação de dados com Data Annotations
- Usando atributos Data Annotations no modelo de domínio
- Principais atributos de validação
- Exemplo de validação no VS 2017

7a. Editando Dados com ADO .NET -  26:12 min.
- Editando dados da tabela Alunos com ADO .NET
- Criando o método AtualizarAluno() na camada de negócio
- Criar stored procedure para alterar dados no BD
- Criar a Action Edit (Get/Post) e a view Edit.cshtml via Scaffolding

 

8a. Customizando o ModelBind -  11:59 min.
- Customizando o comportamento do Model Binding
- Usando atributos : Bind, BindRequired, FromBody, FromRoute
- Exemplo de utlização no VS 2017

9a. Deletando dados com ADO .NET -  min.
- Deletando dados da tabela Alunos com ADO .NET
- Criando o método DeletarAluno() na camada de negócio
- Criar stored procedure para alterar dados no BD
- Criar a Action Delete(Get/Post) e a view Delete.cshtml

10a. Deletar dados usando JavaScript - 7:22  min.
- Solicitando a confirmação de exclusão com JavaScript
- Apresentando a janela de confirmação para excluir
- Usando o HtmlHelper Html.BeginForm

11a. Exibindo detalhes com ADO .NET -  9:23 min.
- Exibindo detalhes de um aluno com ADO .NET
- Usndo o método getAlunos() na camada de negócio
- Criar a Action Details(Get) e a view Details.cshtml

12a. Procurar e Filtrar dados com ADO .NET - 15:10 min.
- Localizando e filtrando dados com ADO .NET
- Criando um formulário de pesquisa : @Html.BeginForm()
- Criar a Action Procurar() e a view Procurar.cshtml
- Usar o método getAlunos()  

13a. Exibindo Imagens  22:07 min.
- Exibindo imagens nos detalhes de um Aluno
- Usando a Action Details
- Alterando a View Details para exibir uma imagem
- Alterar a estrutura da tabela Aluno: Foto e Texto
- Alterar a estrutura das stored procedures
- Alterar os métodos da camada de negócio
- Muito trabalho : melhor usar Entity Framework.

14a. AntiForgery Token -  4:59 min.
- Apresentando o AntiForgey Token
- Prevenindo o ataque cross site 
- Usando o recurso : [ValidateAntiForgeryToken]  na Action
- Usar @Html.AntiForgeyToken na View
- Como funciona

15a. Entity Framework Core -  7:43  min.
- Apresentando o Entity Framework Core 2.0
- Ferramenta ORM : Mapeamento dados/objeto
- EF Core multiplataforma e open source
- Como o Entity Framework funciona :  DbContext e DbSet
- LINQ - Language Integrated Query
- Abordagens :  Code-First e Database First

16a.  Usando o EF Core 2.0 - 18:23 min.
- Usando o EF Core 2.0
- .NET Core SDK 2.0 instalado e VS 2017 Community 15.3.3
-  Referenciando o EF Core no projeto via Nuget
- Abordagem Code-First : partindo do modelo de domínio
- Criando a classe de Contexto
- Definindo a string de conexão do banco de dados
- Registrando o Contexto como um serviço

17a. EF Core Migrations -  12:18 min.
- Usando Migrations do EF Core 2.0
- Gerando o banco de dados e as tabelas com o Migrations
- add-Migration, remove-migration e update-database
- Aplicando o Migrations

18a. Alimentando o Banco de Dados -  9:32 min.
- Alimentando as tabelas com dados de teste usando o Migrations
- Apresentando o arquivo ModelSnapshot que representa o esquema atual
- Criando o Migration para alimentar o BD
- Usando os métodos Up() e Down()
- Usando o comando SQL INSERT INTO para incluir dados
- Usando o comando SQL DELETE  FROM para reverter 

19a. Criando Controllers e View com Scaffolding -   12:56 min.
- Criando o Controller, os métodos Actions e as Views
- Habilitando o Scaffolding
- Selecionando as opções de Scaffolding para MVC
- Criando o Controller com Actions e Views usando o EF Core 
- Definindo a classe do modelo e do contexto
- Definindo as Views, o Layout e o nome do Controller

20a. Consultar dados com LINQ - EF Core  - 13:25 min.
- Criando um novo Controlador - TesteController
- Registrando a instância do contexto como um serviço
- Injetar o serviço no construtor do Controller 
- Definir um método Action Index
- Definir uma consulta LINQ para retorna dados do contexto
- Cria a view Index.cshtml para exibir a lista de alunos
- Usando o template List

21a. Adicionando dados com EF Core - 13:45 min.
- Criando as Action Create(Get/Post)
- Definir o atributo Bind e usar ValidateAntiForgeryToken
- Criar a View Create.cshtml usando o Scaffolding
- Incluindo dados com EF Core: Add(), AddRange()
- Incluir objeto no contexto e usar SaveChanges()

22a. Editar dados com EF Core -  21:03 min.
- Criando as Action Edit(Get/Post)
- Definir o atributo Bind e usar ValidateAntiForgeryToken
- Criar a View Edit.cshtml usando o Scaffolding
- Alterar dados com EF Core: Update(objeto)
- Alterar o objeto no contexto e usar SaveChanges()

23a. Deletar dados com EF Core -  15:55 min.
- Criando as Action Delete(Get/Post)
- Definir o atributo Bind e usar ValidateAntiForgeryToken
- Criar a View Delete.cshtml usando o Scaffolding
- Excluir  dados com EF Core: Remove(objeto)
- Excluir o objeto do contexto e usar SaveChanges()

24a. Exibindo Detalhes com EF Core - 8:05 min.
- Criando a Action Details(Get)
- Criar a View Details.cshtml usando o Scaffolding
- Resumo do CRUD com EF Core 2.0

25a. Alterando o modelo de entidades - 17:58 min.
- Alterando o modelo de domínio : incluindo propriedades
- Incluindo as propriedades Foto e Texto
- Definir as restrições usando Data Annotations
- Aplicar o Migrations
- Incluir uma nova entidade : TipoSocio
- Definir as propriedades e aplicar o DataAnnotations
- Definir o relacionamento entre as tabelas

26a. Exibindo dados Relacionados -  17:39 min.
- Exibindo dados de entidades relacionadas
- Usando as propriedades de navegação para carregar dados
- Usando o Eager Loading
- Carregando dados dos Alunos e TipoSocio

27a. Fluent API -  11:04 min.
- Apresentando Fluent API
- Validando entidades com Fluent API
- Definindo o mapeamento e configuração em OnModelCreating
- Vantagens da Fluent API
- Principais recursos da Fluent API

28a. Fluent API - Exemplo -  25:10 min.
- Fluent API - métodos para configurar Tipos e propriedades
- Configurando relacionamentos com Fluent API
- Relacionamento um-para-um e um-para-muitos
- Exemplo prático usando o VS 2017 Community

29a. EF Core Database First -  20:00  min.
- Apresentando a abordagem DataBase First
- Partindo do banco de dados e as tabelas
- Gerando as entidades e o contexto
- Referenciando o Ef Core 2.0 no projeto no VS 2017
- Fazendo a engenharia reversa do banco de dados e tabelas

30a. EF Core Code First usando NET CLI -  28:22 min.
- Criando aplicação ASP .NET Core com EF Core no Linux/Mac   
- .NET Core SDK e VS Code com NET CLI 
- Referenciar o EF Core 2.0 no projeto : dotnet add package
- Criar o projeto mvc usando a ferramenta NET CLI : dotnet new
- Abrindo o projeto no VS Code
- Definir o modelo de domínio e a classe de contexto
- Definjir a string de conexão e aplicar o Migration

31a.  EF Core Code First usando NET CLI  II -   16:45 min.
- Populando as tabelas com MIgrations
- Registrar e configurar o contexto no Startup
- Criar o controller e injetar o serviço do contexto no construtor
- Criar o método Action Index
- Criar a View Index

32a. EF Core Database First usando NET CLI-  21:43 min.
- Aplicação ASP .NET Core com DataBase First usando NET CLI
- Partindo do banco de dados e as tabelas
- Gerando as entidades e o contexto
- Referenciando o Ef Core 2.0 no projeto no NET CLI
- Fazendo a engenharia reversa do banco de dados e tabelas
- Abrindo o projeto com o VS Code

33a. Usando a Paginação de dados -  14:38 min.
- Realizando a paginação de dados na ASP .NET Core MVC c/EF Core
- Usando o pacote : ReflectionIT.Mvc.Paging
- Paginação : incluir serviço services.AddPaging()
- Definir a paginação no método do Controller
- Alterar a view incluindo o namespace as taghelpers

34a. Atividade -  21:46 min.
- Criar solução ASP .Net Core MVC e referenciar o EF Core no projeto;
- Definir um modelo de entidades com propriedades e associações-
- Definir a sua classe de contexto com respectivos DbSets;
- Definir a validação usando Data Annotations
- Realizar o mapeamento entre as entidades usando a Fluent API;
- Aplicar o Migrations no EF Core
- Registrar o seu contexto no arquivo Startup.cs;
- Criar o controlador com Actions e respectivas views usando o Scaffolding;
- Exibir dados relacionados;

Módulo 4 - Segurança

1a. ASP .NET Core Identity - Introdução - 5:37 min.
- Apresentando a ASP .NET Core Identity
- Implementação da Segurança
- Autenticação e Autorização
- IdentityUser , UserManager, RoleManager 

2a. Usando ASP .NET Core Identity -  27:18 min.
- Usando Identity em uma aplicação ASP .NET Core MVC   
- Criando um projeto mvc com Individual User Accounts
- A estrutura do projeto com Identity
- As referências ao EF Core e as classes do domínio e contexto
- Configuração do Identity e o middleware app.UseAuthentication()
- Usando o Migrations do Identiy

3a. Autenticação e Autorização com Identity -  26:40 min.
- Criar projeto ASP .NET Core MVC com Individual User Accounts
- Gerenciando informações de Contatos
- Criando o modelo de domínio
- Definindo o DbSet na classe de contexto ApplicationDbContext
- Aplicando o Migrations para gerar o banco de dados e tabelas
- Aplicando a Autenticação : Login e Register
- Aplicando a Autorização usando o atributo Authorize

4a. Fazendo o Login com o Facebook -  17:02 min.
- Fazendo o login usando as credenciais do Facebook
- Criar aplicação no Facebook : AppId e AppSecret
- Habilitar o SSL
- Registrar a AppId e a AppSecret no appsettings
- Configurar o serviço de autenticação usando provedor de terceiros
- Adicionar o serviço do Facebook em ConfigureServices

5a. Usando a ferramenta Secret Manager -  11:12  min.
- Armazenando informações confidenciais com o Secret Manager
- Armazenando as informações do AppId e AppSecret
- Referenciar o pacote :  Microsoft.Extensions.SecretManager.Tools
- Incluir o node <UserSecretsId>
- Criar o arquivo secrets.json
- Acessar as informações : dotnet user-secrets -h

6a. Alterar a configuração padrão do Identity -  13 min.
- Alterando a configuração padrão do Identity
- Politicas de senha, bloqueio do usuário, configurações de login
- Validações de usuário, configurações de cookies
- Usar o método ConfigureServices() : services.AddIdentity(options)
  
7a. Gerenciando Roles - 14:10 min.
- Tratar Autorização com Roles : perfil de um usuário
- Verificação de autorização usando Role e Authorize
- Exemplo prático com VS 2017 

8a. Gerenciando Roles via código - 20:42 min.
- Gerenciamento de Roles e verificação de perfis de usuário
- Definindo Roles ao usuário no código   
- Verificando os perfis com Authorize

9a Usando Identity com NET CLI -  11:52
- Usando a Autenticação e Autorização com Identity no NET CLI
- Criando um projeto mvc com autenticação : dotnet mvc -auth Individual
- Aplicando o Migrations : dotnet ef migrations add <nome>

10a. Claims - 18:07 min.
- Apresentando Claims : definição e conceitos
- Autorização baseda em Claimns
- ClaimsPrincipal : lista de claims do usuário atual
- User.Clamins, AddClaim; Adicionando verificações de claims
- AddPolicy(), Authorize(Policy="")

11a. Claims : Exemplo  - 25:54 min.
- Exemplo de autorização baseada em Claims
- Aplicação ASP.NET Core com autenticação
- Incluir Claim no usuário registrado
- Verificar a autorização no controller: Authorize(Policy="")

12a. Segurança em Web API - duração 20:33  min.
- Implementando a segurança em uma Web API
- Identity, provedores externos, autorização baseada em Token
- JWT - JSON Web Tokens
- Usando Identity

13a. Segurança em Web API  II - duração 26:36  min.
- Implementando a segurança em uma Web API
- Usando Identity
- Definindo as ViewModels
- Criando o Controller e os métodos Action
- Definindo as views para registro e login
- Verificando a autenticação :  Authorize 

14a. Apresentando CORS -  12:30 min.
- Apresentando o CORS : conceitos
- Cross Origin Resource Sharing
- Permitindo requisições Ajax de origem cruzada
- Como funciona ; Configurando CORS
- Usando o middleware CORS

15a. Autenticação via Cookies -  5:00 min.
- Apresentando a autenticação via Cookies  (Sem Identity)
- Configuração da autenticação via cookies
- AddAuthentication e AddCookie
- Definir o esquema de autenticação
- Invocar o middleware : UseAuthentication()
- Definir CookieAuthenticationOptions na configuração do serviço

16a. Autenticação via Cookies : Exemplo -  20:51 min.
- Autenticação via Cookies na ASP .NET Core mvc no VS 2017
- Definir o modo de autenticação no serviço : AddAuthentication()
- Definir as opções de autenticação
- Definindo a classe LoginViewModel: usuario e senha
- Criar o controller e o método Action Login
- Validar o Login e definir as claims do usuário
- Validar a autorização : Authorize()

17a. JWT - JSON Web Tokens -  10:18 min.
- Apresentando JSON Web Tokens
- Definição e Conceitos
- Como funciona a JWT : processo de autenticação
- Estrutura de um Token JWT

18a. JWT - JSON Web Tokens: Exemplo - 27:52 min.
- Usando JSON Web Tokens para autenticar uma Web API
- Criar projeto ASP .NET Core Web API no VS 2017
- Criar ViewModel LoginViewModel
- Criar Controller AccountController
- Criar View Login e controlador TokenController
- Implementar a autenticação e geração do token no Startup
- Aplicar Authorize e testar no Postman

19a. Identity 2.1 - Introdução -  9:35 min.
- Apresentando o novo Identity da .NET Core 2.1
- O Identity fornecido como uma Razor Class Library
- O que mudou ?
- A estrutura da aplicação com Identity 2.1

20a. Identity 2.1 - Customização -  7:58 min.
- Como customizar uma aplicação Identtiy 2.1
- Fazendo o Scaffold dos recursos
- Add Scaffold -> Identity
- A janela Add Identity

21a. Identity 2.1 - Implantando em um novo projeto -  10:53 min.
- Implementando o Identity 2.1 em novo projeto
- Add Scaffold -> Identity
- A janela Add Identity
- Aplicando o Migrations

22a. Identity 2.1 - Usando a NET CLI -  12:28 min.
- Criando um projeto com Identity usando NET CLI
- Configurando o ambiente para customização
- Fazendo  o Scaffold com aspnet-codegenerator

23a. Atividade - 30:37 min.
- Criar aplicação ASP .NET Core e implementar a autenticação via Jwt
- Criar projeto vazio no NET CLI (Sem usar o VS 2017)
- Instalar o pacote System.IdentityModel.Tokens.Jwt
- Habilitar o serviço Mvc e autenticação e configurar o Jwt
- Criar o controlador TokenController e gerar o Token
- Criar página de Login e definir a geração do Token

24a. Atividade - Extra :  2 Aulas - total : 30:24 min.
- Criar aplicação ASP .NET Core MVC com autenticação individual com VS 2017
- Implementar a criação de roles (perfis)
- Atribuir perfil criado a um usuário ao registrar o usuário
- Criar o controlador RoleRontroller
- Criar os métodos Index para listar e Create para criar perfis
- Criar as Views par exibir os perfis
- Ajustar o método Action Register Get e Post
- Ajustar a view Register p/ permitir selecionar o perfil
- Aplicar a autorização baseada em Roles (atributo Authorize) e testar

Módulo 5 - Web API

1a. Introdução - 13:50 min.
- Apresentação Web API - conceitos
- Diferenças entre Web API e MVC
- Na ASP .NET Core Web API e MVC herdam da classe Controller
- Web API - construir serviços HTTP (REST)
- Métodos HTTP : GET, POST , PUT, DELETE

2a. Criando uma Web API  -  15:33 min.
- Criando uma Web API na ASP .NET Core 2.0
- .NET Core 2.0 SDK : VS 2017 ou NET CLI e VS Code
- Criando um projeto Web API no VS 2017
- Apresentando o projeto e sua estrutura 
- Definir URI para acessar o recurso no roteamento
- Acessar os recursos da Web API

3a. Web API Produtos : Padrão Repositório  -  17:13 min.
- Criar uma Web API para gerenciar informações de produtos 
- Definindo os métodos da Web API
- Definir modelo de domínio, Criar repositório e interface
- Usando o padrão repositório

4a. Web API Produtos : Controller - 20:40 min.
- Criando o controller: ProdutosController
- Definindo o roteamento : api/[controller]
- Definir os métodos Action do Controller

5a. Web API Produtos : Postman -  13:50 min.
- Consumindo uma Web API usando o Postman
- Apresentando e instalando o Postman
- Acessando a Web API via Postman
- Testando o GET, PUT,  POST e DELETE

6a. Web API Contatos : EF Core -  22:01 min.
- Criando uma Web API usando o EF Core Code First
- Criar Web API para gerenciar informações de Contatos
- Definir modelo de domínio e classe de contexto
- Registrar o contexto , definir a string de conexão
- Criar o banco de dados usando Migrations
- Criar o controlador ContatosController com métodos Action
- Usar o Scaffolding e a opção API Controller with Actions using EF core

7a. Web API Contatos : EF Core : Postman  9:28 min.
- Consumindo a Web API usando o Postman
- Acessando a Web API via Postman
- Testando o GET, PUT,  POST e DELETE

8a. Web API : Consumir com MVC -  18:16 min.
- Consumindo a Web API ContatosController em uma app MVC
- Criando o controlador MVC TesteController para consumir a Web API
- Definir o método Action Index para acessar a Web API

9a. Web API : Consumir com MVC II -  31:03 min.
- Definindo os demais métodos do controller MVC TesteController
- Definir os métodos Action Create, Edit, Delete
- Definir as Views usando o Scaffolding 

10a. Web API : Consumir com JavaScript (jQuery) -  18:42 min.
- Consumindo a Web API definida em ContatosController com JavaScript
- Criar controlador HomeController
- Criar view Index e referenciar o JQuery
- Definir o código JQuery
- Ajustar o projeto :  _ViewStart, _ViewImports e _Layout
- Definir o roteamento e consumir a Web API

11a. Criar WEB API Tarefas no NET CLI e VS Code - 14:00 min.
- Definir serviços da Web API Tarefas
- Requisitos: ,NET Core SDK , NET CLI e VS Code
- Criar projeto web api usando NET CLI e VS Code
- Referenciar o Entity Framework Core no projeto

12a. Criar WEB API Tarefas no NET CLI e VS Code II -  25:14 min.
- Definir o modelo de domínio Tarefa e a classe de Contexto
- Definir a string de conexão no arquivo appsettings.json
- Registrar o contexto como um serviço
- Aplicar o migrations : dotnet ef migrations add
- Popular a tabela usando o MIgrations
- Criar o controller TarefaController
- Definir o método Action para retornar todas as tarefas

13a. Criar WEB API Tarefas no NET CLI e VS Code III - 17:48 min.
- Definir os demais métodos Action para acessar a Web API
- Consumindo a Web API
- Usando o dotnet watch

14a. Web API - Documentação com Swagger -  12:48  min.
- Gerando a documentação para Web API com Swagger
- Apresentando o Swagger : Swashbuckle.AspNetCore
- Adicionar e configurar o Swagger
- Usar o Swagger : http://localhost:XXX/swagger/v1/swagger.json
- Acessar a interface com : http://localhost:xxx/swagger

15a. Atividade  - 28:32 min. e  24:49 min.
- Consumir uma Web API em uma aplicação Windows Forms
- Criar a Web API  ASP . NET CoreProdutosAPI
- Consumir os serviços da Web API
- Criar projeto Windows Forms WFProdutosAPI

Módulo 6 - Front End : Angular

1a. Introdução ao Angular - 20:09 min.
- Integrando a ASP .NET Core com o Angular
- Criando uma aplicação Single Page Application - SPA
- Conceitos de SPA
- Lado do Cliente : Angular , lado do servidor : ASP .NET Core
- Opções de desenvolvimento e requisitos
- Nodejs, NPM, TypeScript, Angular e Angular CLI

2a. Aplicação ASP .NET Core com Angular  -  22:05 min.
- Criar aplicação Integrada ao Angular usando o EF Core
- Usando o template Angular no VS 2017
- Incluir as referências ao Entity Framework Core 
- Criando o Backend : A Web API
- Criar o controlador API com Actions e Views usando o Scaffolding
 
3a. Aplicação ASP .NET Core com Angular  II -  23:15 min.
- Criar o front-end usando o Angular
- Apresentando os componentes do Angular
- Criar a pasta do componente: Cliente
- Criar os arquivos do componente: cliente.component.ts e html
- Ajustar o menu da aplicação e definir as rotas para o clientecomponent

4a. Aplicação ASP .NET Core com Angular  III - 29:50 min.
- Definir o serviço Angular para acessar a Web API
- Definir o serviço para exibir os clientes
- Criando a classe ClienteService em cliente.service.ts
- Definir a lógica do componente para acessar os serviços
- Definir a view do componente para exibir as informações dos clientes 

5a. Aplicação ASP .NET Core com Angular  IV -  28:39 min.
- Definir o serviço para incluir um cliente
- Definir a lógica método no componente para incluir cliente
- Definir da view do componente para exibir o formulário
- Usando os recursos do Angular ReactiveForms, FormGroup

6a. Aplicação ASP .NET Core com Angular  V -  22:44 min.
- Definir o serviço para incluir um editar e deletar um cliente
- Definir a lógica do componente para deletar e editar um cliente
- Definir da view do componente para edição e exclusão

7a.  Single Page Application ou Aplicação Web - 5:59 min.
- Comparando SPA com app web tradicional
- Principais recursos das Single Page Application
- As vantagens e desvantagens de cada abordagem
- Quando usar uma abordagem SPA

8a. Atividade -   23:43 min.
- Integrando uma aplicação ASP .NET Core com Angular
- Usando o micro ORM Dapper
- Criar o Banco de dados e as tabelas
- Criar as stored Procedures
- Definir o serviço da Web API
- Criar a interface e sua implementação
- Criar o backend e a seguir o front-end com Angular

Módulo 7 - Projeto

1a. Fatores que impactam o Projeto - 8:50 min.
- Os principais fatores que impactam o seu projeto ASP .NET Core
- Os requisitos do projeto : as incertezas
- Decompondo os requisitos e definindo a complexidade
- Definindo o tamanho da sua aplicação
- Definindo uma arquitetura de referência
- Escopo, Audiência, Escalabilidade, Confiabilidade e Segurança

2a. Princípios básicos para criar um projeto  -  8:37 min.
- Princípios básicos para criar um projeto robusto
- Separação das responsabilidades
- Encapsulamento 
- Injeção de dependência
- Princípios SOLID
 
3a. Estilos de arquiteturas de projeto -  16:27 min.
- Apresentando estilos de arquiteturas de projeto 
- O desenvolvimento em camadas: benefícios
- Layers ou Tiers : definição
- Arquitetura em 3 camadas : Apresentação, Negócio e Dados
- Benefícios e Problemas
- Arquitetura em Cebola - Onion Archicteture
- As vantagens e desvantagens
- Entendendo MVC e 3 Camadas.

4a. Criando uma aplicação em camadas - 21:25 min.
- Criando uma solução ASP .NET Core MVC no VS 2017
- Criando dois projetos : o projeto Web MVC - Artistas.Web
- O projeto Class Library que será  a camada de acesso dados - Artistas.DAL
- Acessando dados com EF Core Code First no SQL Server
- Referenciando o EF Core no projeto Artistas.DAL
- Definindo o modelo de domínio e a classe de Contexto

5a.  Criando uma aplicação em camadas II -  22:44 min.
- Mapeando as entidades usando a Fluent API
- Criando uma classe Startup e um arquivo json para definir a conexão 
- Registrando o contexto como um serviço na classe Startup
- Aplicando o Migrations para gerar o banco de dados e as tabelas
- Populando as tabelas com dados usando o Migrations

6a. Aplicação ASP .NET Core com Angular  V -  8:21 min.
- Definir a string de conexão no arquivo appsettings no projeto Artistas.Web
- Registrar o contexto como um serviço no projeto Artistas.Web
- Criar o controlador ArtistasController com Actions e Views com EF Core

7a. O padrão Repositório e Unit of Work - 14:17 min.
- Padrão Repositório :  definição e conceitos
- Benefícios do padrão Repositório
- Padrão Unit Of Work : definição e conceitos
- Para que serve o Unit of Work
- Usando corretamente os padrões

8a. Implementando o padrão Repositório e Unit of Work -  20:18 min.
- Implementando o padrão repositório e unit of work no projeto em camadas
- Desacoplando a camada de acesso a dados do Entity Framework
- Definindo o Repositorio e a UnitOfWork no projeto Artistas.DAL
- Criando o Repositório genérico e o repositório específico

9a. Implementando o padrão Repositório e Unit of Work  II -  21:21 min.
- Registrando o serviço para a UnitOfWork  no projeto Web
- Criando o controlador mvc TesteControler acessando o repositório
- Definindo os métodos Action e acessando via UnitOfWork o repositório
- Criando as Views para os Métodos Action

10a. Deploy -  21:28 min.
- Apresentando os conceitos de Deploy na ASP .NET Core
- Deploy em múltiplos ambientes usando o VS 2017 ou o NET CLI
- Publicar o aplicativo em uma pasta no servidor
- Configurar um gerenciandor de processo
- Configurar um proxy reverso

11a. Deploy no Azure App Service - 15:56 min.
- Fazendo o deploy 
- Criar conta gratuita no Azure
- Deploy de projeto ASP .NET Core com EF Core e SQL Server e Segurança
- Fazendo o deploy usando o VS 2017 - opção Publish
- Microsoft Azure App Service - Create New

12a. Atividade - 16:52
- Usando a NET CLI e o VS Code criar uma solução e dois projetos
- Crie uma pasta chamada Artistas para conter os projetos e a solução
- Na pasta Artistas crie uma solução chamada Artistas.sln
- Na pasta Artistas crie um projeto do tipo Class Library com o nome Artistas.DAL
- Na pasta Artistas crie um projeto MVC com o nome Artistas.Web
- Inclua uma referência no projeto Artistas.Web ao Projeto Artistas.DAL
- Inclua as referência ao EF Core no projeto Artistas.DAL

Módulo 8 - Bônus

1a. Enviando Email com ASP .NET Core – parte 1  4:51 min.
       Enviando Email com ASP .NET Core – parte 2  18:44 min.


- Enviando email via SMTP usando a conta do GMAIL
- Criar projeto ASP .NET Core MVC no VS 2017 Community
- Definir as configurações para o Servidor SMTP no arquivo appsettings.json
- Criando a classe de domínio EmailSettings
- Registrando a classe no método ConfigureServices da classe Startup
- Criar um serviço para enviar email : criar a interface IEmailSender e a classe concreta
- Registrar o serviço para envio de email no método ConfigureServices da classe Startup
- Criar um Controller para enviar e-mails e injetar o serviço no controlador
- Configurar a conta do Gmail

2a. Criando Gráficos com GoogleChart 15:15 min.

- Criar projeto ASP .NET Core MVC no Visual Studio Code
- Referenciando a biblioteca do GoogleChart no projeto;
- Criando a classe de domínio PopulacaoModel;
- Criando a classe de serviço : PopulacaoService();
- Criando o controller PopulacaoController;
- Crir a view para renderizar o gráfico;
- Usar os recursos do GoogleChart e definir o gráfico de barras e de linha;

3a. Gerando PDF com Rotativa 15:50 min.

- Gerando arquivos PDF usando a biblioteca Rotativa.AspNetCore
- Criar projeto via linha de comando usando a NET CLI  e usando o VS Code
- Criar a pasta Rotativa dentro da pasta wwwroot do projeto
- Copiando os arquivos wkhtmltopdf.exe e wkhtmltoimage.exe na pasta
- Configurando a biblioteca no projeto no método Configure() da classe Startup
- Criar o controlador e usar o método ViewAsPdf() para gerar PDF a partir das Views
- Criando alguns exemplo de geração de PDF

4a. Salvando e Exibindo imagens no banco de dados SQL Server 1 –  9:18 min.
Salvando e Exibindo imagens no banco de dados SQL Server 2 – 22:32 min.


- Criar projeto ASP .NET Core MVC no VS 2017 Community
- Acessar banco de dados Estudo.mdf/tabela Filmes c/campo Imagem do tipo varbinay(MAX)
- Criar a classe Filme com a propriedade Imagem to tipo array de bytes (byte[])
- Criar a classe de contexto FilmesDbContext e definir o DbSet<Filme>
- Definir a string de conexão com o banco de dados no arquivo appsettings.json
- Registrar o contexto no método ConfigureServices() da classe Startup
- Definir o provedor SQL Server e acessar a string de conexão no arquivo appsettings.json
- Criar o Controlador FilmesController com os métodos Index, Create e ExibirImagem
- Definir as views Index e Crerate
- Para enviar imagem no formulário usar o enctype igual a ‘multipart/form-data’
- Usar a interface IFormFile no método Create Post para tratar a imagem enviada

5a. Upload de Arquivos -  15:50 min.
Upload e Download de arquivos - I  - 10:32 min.
Upload e Download de arquivos - II - 14:47 min.
Upload de arquivos com Angular -  12:32 min.


- Criar projeto ASP .NET Core MVC no VS 2017 Community
- Enviar arquivos pequenos para o servidor
- Definir o form HTML na View: método POST, Controller e enctype: multipart/form-data
- Definir o input tipe como file; usar o atributo multiple para enviar mais de um arquivo
- Usar a interface IFormFile e ós métodos nela definidos
- Definir os métodos no Controller para fazer Upload e Download
- Usar a interface IHostingEnvironement
- Usar a interface IFormFile no método Create Post para tratar a imagem enviada

6a. Aplicação Despesas Pessoais -  14:45 min.

- Projeto ASP .NET Core MVC
- ASP .NET Core 2.1
- Entity Framework Core 2.1 - Code-First - Migrations
- SQL Server 2012
- Camada de Acesso a Dados - DAL
- Injeção de dependência Nativa
- Bootstrap, Jquery, HighCharts
- Janelas de diálogos Modais