SlideShare uma empresa Scribd logo
1 de 23
ASP.NET
MVC 5.x
Waldyr Felix
Arquiteto de Software
E-mail: waldyrfelix@gmail.com
Blog: waldyrfelix.net
Twitter: @WaldyrFelix
Versões, versões, versões e mais versões...
Print screen retirado
do site NuGet.org
Instalar MVC muito
mais fácil
Atualizar o ASP.NET MVC a qualquer momento
Novo modelo, a partir doVisual Studio 2013
Modelo antigo,Visual Studio 2012 pra trás
É possível trabalhar com tudo ao mesmo tempo!
Open Source? Sim!
• Código fonte aberto no CodePlex
– http://aspnetwebstack.codeplex.com
• Não gosta do CodePlex?Tem no GitHub também!
– https://github.com/ASP-NET-MVC/aspnetwebstack
Bootstrap
ASP.NET Identity
• Integrado com Google, Facebook,Twitter e Microsoft
• Baseado em Claims e não em Roles
• Suporte a OAuth
• Integrado com EF 6
• Fácil customização das tabelas
• Fácil de fazer testes unitários
EditorFor suporta atributos HTML
• Agora há suporte para customizar atributos HTML nos HTML
Helpers EditorFor e DisplayFor
Suporte a Enum nasViews
• Agora é possível criar um DropDownList a partir de uma lista
enumerada
• Os dois principais métodos de suporte a esta funcionalidade são:
– Html.EnumDropDownListFor() = HTML helper que renderiza um
DropDownList na tela contendo a lista de valores do Enum
– EnumHelper.GetSelectList() = Retorna uma coleção do tipo
IList<SelectListItem>, possibilitando a manipulação mais flexível desta lista
• Também funciona com Display para mostrar os labels amigáveis
para o usuário
Attribute Routing
• Definições de rotas por Action
• Pode ser usado no lugar de rotas definidas no Global.asax
• Podem ser usadas juntas com as rotas normais
• Definição facilitada de constraints
• Podem ser usados para definir áreas também
Attribute Routing Exemplo
• URL: /books/828837829
– Neste caso devolve a
view OneBook
• URL: /books
– Neste caso devolve a
view AllBooks
Authentication filters
• Adiciona verificação de credenciais ao ASP.NET MVC
• Pode ser feita por Action, Controller ou Global
assim como os outros filtros
• Executado antes do filtro de autorização [Authorize]
• É possível adicionar Challenges no response não autorizado
 Separação de responsabilidades
Filter Overrides
• Servem para mudar o comportamento de determinada Action ou
Controller da execução de alguns filtros definidos globalmente
• Existem 5 deles disponíveis para uso no MVC 5:
– OverrideActionFilters
– OverrideAuthentication
– OverrideAuthorization
– OverrideExceptionFilters
– OverrideResultFilters
• É possível criarmos nossos próprios Filter Overrides
Obrigado!
E-mail: waldyrfelix@gmail.com
Blog: waldyrfelix.net
Twitter: @WaldyrFelix

Mais conteúdo relacionado

Mais procurados

Quick intro to Apache Maven
Quick intro to Apache MavenQuick intro to Apache Maven
Quick intro to Apache Maven
InformantTalks
 
5 dicas simples de performance
5 dicas simples de performance5 dicas simples de performance
5 dicas simples de performance
Cleber Dantas
 

Mais procurados (20)

Vue.js - o framework progressivo
Vue.js - o framework progressivoVue.js - o framework progressivo
Vue.js - o framework progressivo
 
Vuejs Angularjs e Reactjs. Veja as diferenças de cada framework!
Vuejs Angularjs e Reactjs. Veja as diferenças de cada framework!Vuejs Angularjs e Reactjs. Veja as diferenças de cada framework!
Vuejs Angularjs e Reactjs. Veja as diferenças de cada framework!
 
ITerior - .NET Core, usando .NET no Linux!
ITerior - .NET Core, usando .NET no Linux!ITerior - .NET Core, usando .NET no Linux!
ITerior - .NET Core, usando .NET no Linux!
 
Apache maven
Apache mavenApache maven
Apache maven
 
Quick intro to Apache Maven
Quick intro to Apache MavenQuick intro to Apache Maven
Quick intro to Apache Maven
 
Play Framework
Play FrameworkPlay Framework
Play Framework
 
Angular js 4php
Angular js   4phpAngular js   4php
Angular js 4php
 
WSO2 Application Server como Alternativa ao Tomcat
WSO2 Application Server como Alternativa ao TomcatWSO2 Application Server como Alternativa ao Tomcat
WSO2 Application Server como Alternativa ao Tomcat
 
Make Java fun again com Spring Boot
Make Java fun again com Spring BootMake Java fun again com Spring Boot
Make Java fun again com Spring Boot
 
ASP.NET Core 2.1 #dotnetconf
ASP.NET Core 2.1 #dotnetconfASP.NET Core 2.1 #dotnetconf
ASP.NET Core 2.1 #dotnetconf
 
JBoss-WildFly - Avançado
JBoss-WildFly - AvançadoJBoss-WildFly - Avançado
JBoss-WildFly - Avançado
 
Novidades do ASP.NET Core 2.1
Novidades do ASP.NET Core 2.1Novidades do ASP.NET Core 2.1
Novidades do ASP.NET Core 2.1
 
ASP.NET Web Forms X ASP.NET MVC
ASP.NET Web Forms X ASP.NET MVCASP.NET Web Forms X ASP.NET MVC
ASP.NET Web Forms X ASP.NET MVC
 
Smoke tests, deployment e rollback automatizados (Mobile & Cloud Hack Days 2016)
Smoke tests, deployment e rollback automatizados (Mobile & Cloud Hack Days 2016)Smoke tests, deployment e rollback automatizados (Mobile & Cloud Hack Days 2016)
Smoke tests, deployment e rollback automatizados (Mobile & Cloud Hack Days 2016)
 
O novo ASP.NET - Stone Tech Saturday - Março/2017
O novo ASP.NET - Stone Tech Saturday - Março/2017O novo ASP.NET - Stone Tech Saturday - Março/2017
O novo ASP.NET - Stone Tech Saturday - Março/2017
 
WildFly Avançado - TDC Floripa 2015
WildFly Avançado - TDC Floripa 2015WildFly Avançado - TDC Floripa 2015
WildFly Avançado - TDC Floripa 2015
 
Feature toggle
Feature toggleFeature toggle
Feature toggle
 
5 dicas simples de performance
5 dicas simples de performance5 dicas simples de performance
5 dicas simples de performance
 
ASP .NET Core MVC
ASP .NET Core MVCASP .NET Core MVC
ASP .NET Core MVC
 
React - Introdução
React - IntroduçãoReact - Introdução
React - Introdução
 

Destaque (6)

Workshop ASP.NET MVC 5
Workshop ASP.NET MVC 5Workshop ASP.NET MVC 5
Workshop ASP.NET MVC 5
 
Produtividade na criação de websites com ASP.NET MVC
Produtividade na criação de websites com ASP.NET MVCProdutividade na criação de websites com ASP.NET MVC
Produtividade na criação de websites com ASP.NET MVC
 
MVC
MVCMVC
MVC
 
Desenvolviemento web com ASP.Net e MVC
Desenvolviemento web com ASP.Net e MVCDesenvolviemento web com ASP.Net e MVC
Desenvolviemento web com ASP.Net e MVC
 
Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...
Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...
Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...
 
Apostila MVC
Apostila MVCApostila MVC
Apostila MVC
 

Semelhante a ASP.NET MVC 5.x

ASP.NET MVC - Alexandre Tarifa
ASP.NET MVC - Alexandre TarifaASP.NET MVC - Alexandre Tarifa
ASP.NET MVC - Alexandre Tarifa
guestea329c
 
Play Framework - Desenvolvendo Aplicações Web com Java sem Dor
Play Framework - Desenvolvendo Aplicações Web com Java sem DorPlay Framework - Desenvolvendo Aplicações Web com Java sem Dor
Play Framework - Desenvolvendo Aplicações Web com Java sem Dor
Allyson Barros
 
[CLPE] Novidades do Asp.net mvc 2
[CLPE] Novidades do Asp.net mvc 2[CLPE] Novidades do Asp.net mvc 2
[CLPE] Novidades do Asp.net mvc 2
Felipe Pimentel
 
Spring MVC Framework
Spring MVC FrameworkSpring MVC Framework
Spring MVC Framework
elliando dias
 

Semelhante a ASP.NET MVC 5.x (20)

ASP.NET MVC - Alexandre Tarifa
ASP.NET MVC - Alexandre TarifaASP.NET MVC - Alexandre Tarifa
ASP.NET MVC - Alexandre Tarifa
 
ASP.NET MVC
ASP.NET MVCASP.NET MVC
ASP.NET MVC
 
ApresentaçãO Mvc
ApresentaçãO MvcApresentaçãO Mvc
ApresentaçãO Mvc
 
Apresentação M V C
Apresentação M V CApresentação M V C
Apresentação M V C
 
Play Framework - Desenvolvendo Aplicações Web com Java sem Dor
Play Framework - Desenvolvendo Aplicações Web com Java sem DorPlay Framework - Desenvolvendo Aplicações Web com Java sem Dor
Play Framework - Desenvolvendo Aplicações Web com Java sem Dor
 
Palestra ASP.NET MVC
Palestra ASP.NET MVCPalestra ASP.NET MVC
Palestra ASP.NET MVC
 
Curso AngularJS - Parte 1
Curso AngularJS - Parte 1Curso AngularJS - Parte 1
Curso AngularJS - Parte 1
 
Backbone.js nas trincheiras
Backbone.js nas trincheirasBackbone.js nas trincheiras
Backbone.js nas trincheiras
 
[CLPE] Novidades do Asp.net mvc 2
[CLPE] Novidades do Asp.net mvc 2[CLPE] Novidades do Asp.net mvc 2
[CLPE] Novidades do Asp.net mvc 2
 
Azure DevOps - Um case de sucesso
Azure DevOps - Um case de sucessoAzure DevOps - Um case de sucesso
Azure DevOps - Um case de sucesso
 
Gerenciando Clusters Kubernetes usando Cluster API, Azure Arc e GitOps
Gerenciando Clusters Kubernetes usando Cluster API, Azure Arc e GitOpsGerenciando Clusters Kubernetes usando Cluster API, Azure Arc e GitOps
Gerenciando Clusters Kubernetes usando Cluster API, Azure Arc e GitOps
 
TechNet Wiki Summit 2015 - DevOps
TechNet Wiki Summit 2015 - DevOpsTechNet Wiki Summit 2015 - DevOps
TechNet Wiki Summit 2015 - DevOps
 
Grails
GrailsGrails
Grails
 
Palestra
PalestraPalestra
Palestra
 
Tutorial struts
Tutorial strutsTutorial struts
Tutorial struts
 
Spring MVC Framework
Spring MVC FrameworkSpring MVC Framework
Spring MVC Framework
 
ASP.NET WebForms x ASP.NET MVC
ASP.NET WebForms x ASP.NET MVCASP.NET WebForms x ASP.NET MVC
ASP.NET WebForms x ASP.NET MVC
 
Paralelize seus testes web e mobile para ter feedbacks mais rápidos
Paralelize seus testes web e mobile para ter feedbacks mais rápidosParalelize seus testes web e mobile para ter feedbacks mais rápidos
Paralelize seus testes web e mobile para ter feedbacks mais rápidos
 
Servlets e jsp
Servlets e jspServlets e jsp
Servlets e jsp
 
CDI Extensions e DeltaSpike
CDI Extensions e DeltaSpikeCDI Extensions e DeltaSpike
CDI Extensions e DeltaSpike
 

Mais de Waldyr Felix

Explorando Microsoft Fakes
Explorando Microsoft FakesExplorando Microsoft Fakes
Explorando Microsoft Fakes
Waldyr Felix
 
Usando Scrum com Team Foundation Server 2012
Usando Scrum com Team Foundation Server 2012Usando Scrum com Team Foundation Server 2012
Usando Scrum com Team Foundation Server 2012
Waldyr Felix
 
ASP.NET WebAPI HTTP Basic Auth
ASP.NET WebAPI HTTP Basic AuthASP.NET WebAPI HTTP Basic Auth
ASP.NET WebAPI HTTP Basic Auth
Waldyr Felix
 

Mais de Waldyr Felix (20)

Apache Kafka: Comunicando microsserviços com performance
Apache Kafka: Comunicando microsserviços com performanceApache Kafka: Comunicando microsserviços com performance
Apache Kafka: Comunicando microsserviços com performance
 
Kubernetes: Escalando containers do Docker
Kubernetes: Escalando containers do DockerKubernetes: Escalando containers do Docker
Kubernetes: Escalando containers do Docker
 
A história do LinkApi, como chegamos numa arquitetura para suportar 1 milhão ...
A história do LinkApi, como chegamos numa arquitetura para suportar 1 milhão ...A história do LinkApi, como chegamos numa arquitetura para suportar 1 milhão ...
A história do LinkApi, como chegamos numa arquitetura para suportar 1 milhão ...
 
HTTP/2. O que você precisa saber a nova versão do HTTP.
HTTP/2. O que você precisa saber a nova versão do HTTP.HTTP/2. O que você precisa saber a nova versão do HTTP.
HTTP/2. O que você precisa saber a nova versão do HTTP.
 
ECMAScript 6 / ECMAScript 2015 no Node.js
ECMAScript 6 / ECMAScript 2015 no Node.jsECMAScript 6 / ECMAScript 2015 no Node.js
ECMAScript 6 / ECMAScript 2015 no Node.js
 
Performance do ASP.NET Core, um comparativo com Node.js
Performance do ASP.NET Core, um comparativo com Node.jsPerformance do ASP.NET Core, um comparativo com Node.js
Performance do ASP.NET Core, um comparativo com Node.js
 
Ionic + Cordova para Desenvolvimento Mobile
Ionic + Cordova para Desenvolvimento MobileIonic + Cordova para Desenvolvimento Mobile
Ionic + Cordova para Desenvolvimento Mobile
 
Microservices com ASP.NET 5
Microservices com ASP.NET 5Microservices com ASP.NET 5
Microservices com ASP.NET 5
 
ASP.NET SignalR + SPA com AngularJS
ASP.NET SignalR + SPA com AngularJSASP.NET SignalR + SPA com AngularJS
ASP.NET SignalR + SPA com AngularJS
 
Escalando Aplicações com Redis
Escalando Aplicações com RedisEscalando Aplicações com Redis
Escalando Aplicações com Redis
 
Sistema de Notificações com SignalR TDC 2014
Sistema de Notificações com SignalR TDC 2014Sistema de Notificações com SignalR TDC 2014
Sistema de Notificações com SignalR TDC 2014
 
ASP.NET MVC & Entity Framework
ASP.NET MVC & Entity FrameworkASP.NET MVC & Entity Framework
ASP.NET MVC & Entity Framework
 
ASP.NET WEB API
ASP.NET WEB APIASP.NET WEB API
ASP.NET WEB API
 
Trilha .NET - REST na plataforma Microsoft com ASP.NET Web API
Trilha .NET - REST na plataforma Microsoft com ASP.NET Web APITrilha .NET - REST na plataforma Microsoft com ASP.NET Web API
Trilha .NET - REST na plataforma Microsoft com ASP.NET Web API
 
Asp.net web api
Asp.net web apiAsp.net web api
Asp.net web api
 
Explorando Microsoft Fakes
Explorando Microsoft FakesExplorando Microsoft Fakes
Explorando Microsoft Fakes
 
ASP.NET Web API
ASP.NET Web APIASP.NET Web API
ASP.NET Web API
 
Usando Scrum com Team Foundation Server 2012
Usando Scrum com Team Foundation Server 2012Usando Scrum com Team Foundation Server 2012
Usando Scrum com Team Foundation Server 2012
 
ASP.NET WebAPI HTTP Basic Auth
ASP.NET WebAPI HTTP Basic AuthASP.NET WebAPI HTTP Basic Auth
ASP.NET WebAPI HTTP Basic Auth
 
ASP.NET Web API no Windows Azure
ASP.NET Web API no Windows AzureASP.NET Web API no Windows Azure
ASP.NET Web API no Windows Azure
 

ASP.NET MVC 5.x

  • 1. ASP.NET MVC 5.x Waldyr Felix Arquiteto de Software E-mail: waldyrfelix@gmail.com Blog: waldyrfelix.net Twitter: @WaldyrFelix
  • 2. Versões, versões, versões e mais versões... Print screen retirado do site NuGet.org
  • 4. Atualizar o ASP.NET MVC a qualquer momento
  • 5.
  • 6. Novo modelo, a partir doVisual Studio 2013
  • 8. É possível trabalhar com tudo ao mesmo tempo!
  • 9. Open Source? Sim! • Código fonte aberto no CodePlex – http://aspnetwebstack.codeplex.com • Não gosta do CodePlex?Tem no GitHub também! – https://github.com/ASP-NET-MVC/aspnetwebstack
  • 11.
  • 12. ASP.NET Identity • Integrado com Google, Facebook,Twitter e Microsoft • Baseado em Claims e não em Roles • Suporte a OAuth • Integrado com EF 6 • Fácil customização das tabelas • Fácil de fazer testes unitários
  • 13. EditorFor suporta atributos HTML • Agora há suporte para customizar atributos HTML nos HTML Helpers EditorFor e DisplayFor
  • 14. Suporte a Enum nasViews • Agora é possível criar um DropDownList a partir de uma lista enumerada • Os dois principais métodos de suporte a esta funcionalidade são: – Html.EnumDropDownListFor() = HTML helper que renderiza um DropDownList na tela contendo a lista de valores do Enum – EnumHelper.GetSelectList() = Retorna uma coleção do tipo IList<SelectListItem>, possibilitando a manipulação mais flexível desta lista • Também funciona com Display para mostrar os labels amigáveis para o usuário
  • 15.
  • 16. Attribute Routing • Definições de rotas por Action • Pode ser usado no lugar de rotas definidas no Global.asax • Podem ser usadas juntas com as rotas normais • Definição facilitada de constraints • Podem ser usados para definir áreas também
  • 17. Attribute Routing Exemplo • URL: /books/828837829 – Neste caso devolve a view OneBook • URL: /books – Neste caso devolve a view AllBooks
  • 18.
  • 19. Authentication filters • Adiciona verificação de credenciais ao ASP.NET MVC • Pode ser feita por Action, Controller ou Global assim como os outros filtros • Executado antes do filtro de autorização [Authorize] • É possível adicionar Challenges no response não autorizado  Separação de responsabilidades
  • 20.
  • 21. Filter Overrides • Servem para mudar o comportamento de determinada Action ou Controller da execução de alguns filtros definidos globalmente • Existem 5 deles disponíveis para uso no MVC 5: – OverrideActionFilters – OverrideAuthentication – OverrideAuthorization – OverrideExceptionFilters – OverrideResultFilters • É possível criarmos nossos próprios Filter Overrides
  • 22.