Você está na página 1de 24

Curso ASP .NET Core 2.

0 - Básico/Intermediário Vídeo Aulas ( C# )

150 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 minutos
- Apresentação do Curso

2a. Apresentação - 12:32 minutos


- Apresentação
- Novos Recursos
- Ambiente de Desenvolvimento
- Opções de Desenvolvimento

3a. Configurando o ambiente - 15 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- Acessando o sistema de arquivos
- Provedores de arquivos - Files Providers
- IFileProvider : IFileInfo, IDirectoryContents, IChangeToken
- Implementações de IFileProvider

14a. Middleware - 10:08 minutos


- 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 minutos


- 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 minutos
- 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. 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 minutos
- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- Passando dados entre o Controller e a View
- Usando ViewBag, ViewData
- Exemplo prático no VS Code
12a. Model - 17:54 minutos
- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- Apresentando os HtmlHelpers
- Sintaxe dos HtmlHelpers
- Principais métodos HtmlHelpers
- Exemplo de funcionamento e utilização

17a. HtmlHelpers : Exemplo - 17:09 minutos


- Exemplo de utilização de HtmlHelpers
- Aplicação Asp Net Core MVC no VS 2017
- Usando HtmlHelpers simples e tipados

18a. TagHelpers - 7:05 minutos


- 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 minutos


- 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 minutos
- 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 minutos


- 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 minutos


- 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 minutos


- Apresentando View Components : conceito
- Criação de uma View Component
- Usando uma ViewComponent

24a. View Components : Exemplo - 18 minutos


- Criando e usando uma ViewComponent
- Aplicação Asp Net Core MVC no VS 2017
- Usando InvokeAsync e a TagHelper

25a. Razor Pages - 13:44 minutos


- 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 minutos


- Criando uma aplicação Razor Pages no VS 2017
- Usando o Entity Framework Core Code First
- Criando um Quadro de Avisos

27a. Víew Injection no VS 2017 - 18:57 minutos


- 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

28a. View Injection no VS Code - 14:27 minutos


- 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

29a. Filters conceitos - 9:49 minutos


- Definição de filtros
- Como os filtros funcionam
- Tipos de Filtros
- Implementação dos Filtros
- Escopo e ordem de execução

30a. Filters Exemplo 1 - VS 2017 - 15:45 minutos


- Exemplo de implementação de filtros
- Implementando dois ActionFilter
- SaudaFilterAttribute aplicado a Action
- DuracaoActionFilter aplicado globalmente

31a. Filters Exemplo 2 - VS 2017 - 12:55 minutos


- Exemplo de implementação de filtros
- Implementado um ActionFilter e um ExceptionFilter
- ValidarModeloAttribute aplicado ao Controller
- TrataExceptionAttribute aplicado globalmente

32a. Areas - 10:10 minutos


- 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

33a. Areas : Exemplo - 31:22 minutos


- 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

34a. Atividade - 21:36 minutos


- 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 minutos
- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- 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 - minutos


- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos
- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos
- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos
- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos
- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos
- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos
- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- 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. Atividade - 30:37 minutos


- 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
20a. Atividade - Extra : 2 Aulas - total : 30:24 minutos
- 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.cshtml para 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 minutos
- 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 minutos


- 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 minutos


- 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 minutos


- Criando o controller: ProdutosController
- Definindo o roteamento : api/[controller]
- Definir os métodos Action do Controller

5a. Web API Produtos : Postman - 13:50 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos
- 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 minutos
- 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 minutos
- 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 minutos


- 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 minutos e 24:49 minutos


- 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 minutos
- 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 minutos


- 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 minutos


- 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 minutos
- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos
- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos


- 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 minutos
Enviando Email com ASP .NET Core – parte 2 18:44 minutos

- 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 minutos

- 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 EmailSender
- 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
3a. Gerando PDF com Rotativa 15:50 minutos

- 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 de um banco de dados SQL Server 1 – 9:18 minutos
Salvando e Exibindo imagens de um banco de dados SQL Server 2 – 22:32 minutos

- Criar projeto ASP .NET Core MVC no VS 2017 Community


- Acessar banco de dados Estudo.mdf e tabela Filmes com 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 para o 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 minutos


Upload e Download de arquivos - I - 10:32 minutos
Upload e Download de arquivos - II - 14:47 minutos
Upload de arquivos com Angular - 12:32 minutos

- 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 minutos

- 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

7a. Capturar Imagem da WebCam


Captura Imagem e Exibe - 11:57 min.
Captura Imagem e Salva Localmente - 7:34 min.
Captura Imagem e Salva no SQL Server - 11:31 min.

- Projeto ASP .NET Core MVC


- ASP .NET Core 2.2
- Entity Framework Core 2.2 - DataBase-First
- SQL Server 2012 : CadastroDB
- Usar plugin WebCam.js
- Define banco de dados e tabela no SQL Server
- Define modelo de domínio e classe de contexto
- Definir string de conexão em appsettings.json
- Configurar o serviço na classe Startup
- Cria o controlador CameraController
- Cria o método Action CapturaImagem
- Trata a requisição POST via Ajax
- Armazena a imagem na pasta ImagensCapturadas em wwwroot
- Salva a imagem capturada na tabela ImagensWebCam
- Código fonte do Projeto : AspCore_WebCam

Módulo 9 – Atualizações de Conteúdo


A seguir as aulas que foram incluídas no curso:

Módulo1_Fundamentos

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

Módulo2_ASPNET_CoreMVC2

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

Módulo4_Seguranca

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

Você também pode gostar