Desenvolvendo para web ASP.Net (Overview para iniciantes)
O que há de novo no ASP.NET MVC 5
1. By André A. Veríssimo da Silva
ASP.NET MVC 5
O que há de novo?
ANDRÉ A. VERÍSSIMO DA SILVA
Bacharel em Sistemas de Informação pela FIRB
Software Developer
IT Leader na StefaniniIT
CONTATOS:
andresilvavbp@yahoo.com.br
andsilva@stefanini.com
2. By André A. Veríssimo da Silva
PÚBLICO ALVO
Você já desenvolveu um website utilizando
o ASP.NET MVC 4?
NÃO!
Você ficará um pouco perdido(a), mas não se preocupe após esta
apresentação recomendo a seguinte leitura:
ASP.NET MVC 4 in Action
Jeffrey Palermo, Ben Scheirman e Jimmy Bogard
SIM!!! Ótimo! Vamos avançar...
3. By André A. Veríssimo da Silva
AGENDA
O histórico
O legado
O que há de novo?
Como instalar?
Como atualizar?
Pontos de Atenção
Você sabia!?
O que vem por aí?
Tendências
Fontes de Pesquisa
Agradecimentos
4. By André A. Veríssimo da Silva
O HISTÓRICO
Version Downloads Last updated
Microsoft ASP.NET.Mvc 5.2.3 (latest stable) 2.434.310 segunda-feira, 9 de fevereiro de 2015
Microsoft ASP.NET.Mvc 5.2.3-beta1 28.804 quarta-feira, 17 de dezembro de 2014
Microsoft ASP.NET.Mvc 5.2.2 1.687.516 quinta-feira, 28 de agosto de 2014
Microsoft ASP.NET.Mvc 5.2.2-rc 23.213 sábado, 23 de agosto de 2014
Microsoft ASP.NET.Mvc 5.2.0 887.655 terça-feira, 1 de julho de 2014
Microsoft ASP.NET.Mvc 5.2.0-rc 40.625 terça-feira, 27 de maio de 2014
Microsoft ASP.NET.Mvc 5.1.3 222.876 terça-feira, 14 de outubro de 2014
Microsoft ASP.NET.Mvc 5.1.2 1.043.860 sexta-feira, 4 de abril de 2014
Microsoft ASP.NET.Mvc 5.1.1 721.075 segunda-feira, 10 de fevereiro de 2014
Microsoft ASP.NET.Mvc 5.1.0 487.419 sexta-feira, 17 de janeiro de 2014
Microsoft ASP.NET.Mvc 5.1.0-rc1 29.792 sexta-feira, 6 de dezembro de 2013
Microsoft ASP.NET.Mvc 5.0.2 187.330 terça-feira, 14 de outubro de 2014
Microsoft ASP.NET.Mvc 5.0.1 269.192 quinta-feira, 13 de fevereiro de 2014
Microsoft ASP.NET.Mvc 5.0.0 1.309.037 quinta-feira, 17 de outubro de 2013
Microsoft ASP.NET.Mvc 5.0.0-rc1 35.628 sexta-feira, 23 de agosto de 2013
Microsoft ASP.NET.Mvc 5.0.0-beta2 38.105 quarta-feira, 26 de junho de 2013
Microsoft ASP.NET.Mvc 5.0.0-beta1 28.279 quarta-feira, 26 de junho de 2013
Microsoft ASP.NET.Mvc 4.0.40804 600.509 terça-feira, 14 de outubro de 2014
Microsoft ASP.NET.Mvc 4.0.30506 1.698.840 quinta-feira, 30 de maio de 2013
Microsoft ASP.NET.Mvc 4.0.20710 2.174.377 sábado, 11 de agosto de 2012
Microsoft ASP.NET.Mvc 4.0.20505 185.975 quinta-feira, 31 de maio de 2012
ASP.NET MVC 3 3.0.50813.1 111.138 terça-feira, 14 de outubro de 2014
ASP.NET MVC 3 3.0.20105.1 133.304 quinta-feira, 31 de maio de 2012
Nuget.org
5. By André A. Veríssimo da Silva
O LEGADO
O que o ASP.NET MVC 4 deixou de bom:
• ASP.NET Web API serviços HTTP/RESTfull
• Melhorias no Modelo de Projeto Padrão
• Modelo de Projeto Mobile
• Modos de Exibição baseado em dispositivos e browsers
• jQuery Mobile, View Switcher e Browser Overriding
• Task Support para controles assíncronos
• Azure SDK
• Database Migrations EF5 com suporte para migração;
• Modelo de Projeto Vazio;
• Adicione um Controller a partir de qualquer diretório dentro do seu
projeto;
• Bundling e Minification redução de solicitações HTTP;
• Login pelo Facebook e outros serviços usando OAuth e OpenID;
6. By André A. Veríssimo da Silva
O QUE HÁ DE NOVO?
O que o ASP.NET MVC 5 trás de bom:
• One ASP.NET
• ASP.NET Identity
• Authentication filters
• Filter overrides
• Attribute routing
• Melhorias na View
• Bootstrap nativo
7. By André A. Veríssimo da Silva
O QUE HÁ DE NOVO?
One ASP.NET
Ponto único para criação de projetos Web com um novo assistente que
reúne todos os templates disponíveis. Permite configurações personalizadas
de autenticação e publicação na “nuvem”.
Open ASP.NET
8. By André A. Veríssimo da Silva
O QUE HÁ DE NOVO?
One ASP.NET
Ponto único para criação de projetos Web com um novo assistente que
reúne todos os templates disponíveis. Permite configurações personalizadas
de autenticação e publicação na “nuvem”.
9. By André A. Veríssimo da Silva
O QUE HÁ DE NOVO?
ASP.NET Identity
• Framework que abstrai os recursos de autenticação e
autorização de usuários
• Nativamente baseia-se em Claims (politícas) e não em Roles
• Suporta OAuth2 Sign-on, OpenID Sign-on:
• Microsoft, Google, Facebook, Twitter, LinkedIn
• Integrado com EF 6
• Preparado para o futuro:
• Building e hosting - Katana e OWIN (Open Web Interface for
.NET)
• Customização facilitada do modelo de dados
• Possui suporte a testes unitários
10. By André A. Veríssimo da Silva
O QUE HÁ DE NOVO?
• Adiciona verificação de credenciais no pipeline do ASP.NET;
• É executado antes dos filtros de autorização (Authorization
filters);
• Podem ser implementadas por Action, Controller ou
globalmente (para todos os Controllers);
• É possível adicionar Challenges no response de requests não
autorizados (mais utilizado em Web API);
• Orientado a Separação de Responsabilidades (Separation of
Concerns);
Authentication filters
11. By André A. Veríssimo da Silva
O QUE HÁ DE NOVO?
• Responsáveis por mudar o comportamento de determinada
Action ou Controller;
• É possível sobrescrever os filtros padrões existentes:
• OverrideActionFilters;
• OverrideAuthentication;
• OverrideAuthorization;
• OverrideExceptionFilters;
• OverrideResultFilters;
Filter overrides
12. By André A. Veríssimo da Silva
O QUE HÁ DE NOVO?
• Definição de rotas por Action e por Area
• Pode substituir as declarações de rotas no Global.asax
• Podem ser utilizadas em conjunto com rotas normais
• Definição de constraints facilitada
Exemplo:
/products/cherrybrandy
Retorna a view “OneProduct”
/products
Retorna a view “AllProducts”
Attribute routing
13. By André A. Veríssimo da Silva
O QUE HÁ DE NOVO?
• Suporte para customização de
atributos HTML nos Helpers:
EditorFor e DisplayFor
• DropDownList com suporte a
Enum:
• Html.EnumDropDownListFor():
renderiza um DropDown com a
lista de valores do Enum;
• EnumHelper.GetSelectList():
retorna uma coleção do tipo
IList<SelectListItem>;
• Podem ser utilizados no Helper
Display
Melhorias na VIEW
14. By André A. Veríssimo da Silva
O QUE HÁ DE NOVO?
Bootstrap nativo
• Framework CSS (web front-end) elegante, intuitivo e
responsivo de implementação rápida, simples e fácil;
• Integração nativa ao ASP.NET MVC 5;
getbootstrap.com
15. By André A. Veríssimo da Silva
COMO INSTALAR?
• Template nativo a partir do Visual Studio 2013
• Via NuGet Package Manager Console:
16. By André A. Veríssimo da Silva
COMO ATUALIZAR?
• Via NuGet Package Manager Console:
17. By André A. Veríssimo da Silva
PONTOS DE ATENÇÃO
Cuidados após update de versão via NuGet PMC:
• Atualizar Web API para a versão 2 no Global.asax;
• Atualizar as versões dos Assemblies restantes;
• Remover os seguintes assemblies:
• Microsoft.AspNet.Mvc.FixedDisplayModes
• Microsoft.AspNet.WebPages.Administration
• Microsoft-Web-Helpers
• Atualizar as versões dos Assemblies nos web.configs;
• Remover a GUID de tipo de projeto do MVC 4 no “.csproj” do
projeto;
• Maiores detalhes no tutorial:
• How to Upgrade an ASP.NET MVC 4 and Web API Project to
ASP.NET MVC 5 and Web API 2
18. By André A. Veríssimo da Silva
VOCÊ SABIA!?
O projeto ASP.NET MVC é OpenSource!!!
aspnetwebstack.codeplex.com
github.com/ASP-NET-MVC/aspnetwebstack
19. By André A. Veríssimo da Silva
O QUE VEM POR AÍ?
ASP.NET 5 MVC 6??????
• Novo modelo de manipulação de
itens de configuração;
• Integração de ferramentas para
gerenciamento de pacotes client-
side, por exemplo, Bower, Grunt e
npm;
• Mecanismo nativo para injeção de
dependências;
• View Components em
substituição as Partial Views;
• Tag Helpers, alternativa nova
e simplificada ao uso de
HTML Helpers;
Version Downloads Last updated
Microsoft.AspNet.Mvc 6.0.0-rc1-final 118.130 18/11/2015
Microsoft.AspNet.Mvc 6.0.0-beta8 36.224 15/10/2015
Microsoft.AspNet.Mvc 6.0.0-beta7 41.236 02/09/2015
Microsoft.AspNet.Mvc 6.0.0-beta6 45.608 27/07/2015
Microsoft.AspNet.Mvc 6.0.0-beta5 40.491 30/06/2015
Microsoft.AspNet.Mvc 6.0.0-beta4 78.457 24/04/2015
Microsoft.AspNet.Mvc 6.0.0-beta3 87.025 13/02/2015
Microsoft.AspNet.Mvc 6.0.0-beta2 37.641 15/01/2015
Microsoft.AspNet.Mvc 6.0.0-beta1 88.523 11/11/2014
20. By André A. Veríssimo da Silva
TENDÊNCIAS
• A linguagem VB.NET tende a sumir!!!!!
• A linguagem C#.NET ganha cada vez mais força e tem
um curva de atualização muito maior!
• Web Forms tende a perder força dando lugar ao MVC;
• ASP.NET multiplataforma funcionando com outras IDEs
no OSX e Linux;
21. By André A. Veríssimo da Silva
FONTES DE PESQUISA
http://www.asp.net/mvc/mvc5
http://www.asp.net/identity
http://www.infoq.com/br/presentations/owin-projeto-katana
http://www.asp.net/visual-studio/overview/2013/creating-web-projects-in-visual-
studio#bootstrap
http://theshravan.net/blog/authentication-filters-in-asp-net-mvc-5/
http://hackwebwith.net/finally-the-new-asp-net-mvc-5-authentication-filters/
http://weblogs.asp.net/imranbaloch/archive/2013/09/25/new-filter-overrides-in-asp-net-mvc-5-
and-asp-net-web-api-2.aspx
https://www.nuget.org/packages/microsoft.aspnet.mvc/
http://www.asp.net/mvc/overview/releases/how-to-upgrade-an-aspnet-mvc-4-and-web-api-
project-to-aspnet-mvc-5-and-web-api-2
http://www.devmedia.com.br/asp-net-mvc-6-implementando-uma-aplicacao-basica/32265
http://blog.caelum.com.br/principais-mudancas-no-asp-net-5-e-mvc-6/
http://www.devmedia.com.br/gerenciando-bibliotecas-de-scripts-no-visual-studio-2015/31869
22. By André A. Veríssimo da Silva
Summit 2016
Quando
11 de Junho 2016
Início: 08:00
Onde
São Paulo / SP
Av. das Nações Unidas, 12.901
Torre Norte – 31º Andar
Evento anual NÃO gratuito!
http://www.visualstudiosummit.com.br/
23. OBRIGADO!!!
ANDRÉ A. VERÍSSIMO DA SILVA
MEUS CONTATOS:
andresilvavbp@yahoo.com.br
andsilva@stefanini.com
Esta apresentação está disponível no
seguinte endereço:
https://pt.slideshare.net/secret/489g
Ny33PZ6v8V