Novos Recursos do ASP .NET 4.5
 Recursos:

 1   Bundling e Minification (Agrupar e Remover Textos)


 2   Controles e IDE fornecem suporte a Comandos HTML 5.0


 3   2 Servidores WEB Integrados (CASSINI e IIS Express)


 4   Vinculação de Dados Simplificada


 5   JavaScript Não-Invasivo (Separação do Comportamento e Estrutura)




                                                                        2
Demonstração - ASP .NET
1   Criando um Projeto ASP.NET Empty Web Application


2   Criando a Estrutura de Pastas do Projeto (Somente Pastas)


3   Visualizando o Menu com os Principais Arquivo (Add)


4   Criando a Página Inicial do Projeto (Principal.aspx)


5   Clicando 1 vez para Visualizar o Preview do CodeBehind


6   Expandindo o CodeBehind e Visualizando a Classe e os Controles/Métodos da Página




                                                                                       3
Demonstração - ASP .NET
7    Visualizando os Navegadores Instalados (Play)


8    Conhecendo o Page Inspector


9    Executando o Projeto e Visualizando o IIS Express


10   Setando o Visual Studio Development Server (CASINI)


11   Setando o IIS Express como Servidor Web


12   Visualizando o Suporte a HTML5




                                                           4
Demonstração - ASP .NET
13   No Web.Config Edit WCF Configuration


14   Conhecendo o NuGet




                                            5
Bundling e Minification
 Recursos:

  1   Recursos que Melhoram a Performance de Aplicações Web


  2   Diminuem as Requisições entre Máquinas (Cliente x Servidor)


  3   Agrupam arquivos por tipo e removem textos não renderizados


  4   Até o momento só podemos agrupar Arquivos (CSS e JS)


  5   Qualquer Navegador (IE, Firefox, Chrome, Safari, Opera)




                                                                    6
Diferença Bundling e Minification

 Bundling - Agrupamento

  Os arquivos são agrupados por tipo (Extensão)
  Redução de Requisições




 Minification - Redução

  Texto não utilizados são removidos (Espaços, Quebras, Comentários)
  Diminuição de Bytes Trafegados




                                                                       7
Demonstração - Sem Bundling
1   Criando a Estrutura de Pastas (“Bundling_Minification”)


2   Criando os Arquivos CSS e JS


3   Desenhando a Página (“PaginaSEM.aspx”)


4   Importando os Arquivos CSS e JS na Página


5   Visualizando a Página em Modo de Execução


6   Monitorando a Requisição e Visualizando os Arquivos (“CSS e JS”)




                                                                       8
Demonstração - Com Bundling
1   Desenhando a Página (“PaginaCOM.aspx”)


2   Criando os Arquivos CSS e JS


3   Desenhando a Página (“PaginaCOM.aspx”)


4   Importando os Arquivos CSS e JS na Página


5   Criando o Arquivo Global.asax


6   Referenciando a DLL (“System.Web.Optimization”)




                                                      9
Demonstração - Com Bundling
7    Monitorando a Requisição e Visualizando os Arquivos (“CSS e JS”)


8    Visualizando o Merge dos Arquivos (Response Body)


9    Colocando Comentários nos Arquivos (“CSS e JS”)


10   Visualizando que os Comentários foram Removido (Response Body)


11   Verificando que o Merge está em Ordem Alfabética (Arquivos Físicos)




                                                                           10
HTML 5.0
 Recursos:

 1   Visual Studio 11 fornece suporte aos Comandos do HTML 5.0


 2   DocType padrão dos Projetos ASP .NET 4.5 é o HTML 5.0


 3   CodeSnippets para geração de Comandos HTML 5.0


 4   Opera é o Navegador que oferece o melhor suporte ao HTML 5.0




                                                                    11
HTML 5.0 - Suporte para Áudio
 Recursos:

 1   Suporte Nativo para execução de arquivos de áudio


 2   Não precisamos de (Plugins, Seção <Object>)


 3   Seção <Audio>, permite a Execução de Áudio no Navegador


 4   Formatos Suportados: MP3, Wav e Ogg




                                                               12
Demonstração - HTML Áudio
1   Criando a Estrutura de Pastas (“HTML5”)


2   Importando o Arquivo (Musica.mp3) para a Pasta (Audio)


3   Desenhando a Página (“Executar.aspx”)


4   Visualizando a Página em Modo de Execução




                                                             13
HTML 5.0 - Suporte para Vídeo
 Recursos:

  1   Suporte Nativo para execução de arquivos de vídeo


  2   Não precisamos de (Plugins, Seção <Object>)


  3   Seção <Video>, permite a Execução de Vídeos no Navegador


 4    Formatos Suportados: MP4, WebM e Ogg




                                                                 14
Demonstração - HTML Vídeo
1   Importando o Arquivo (Video.mp4) para a Pasta (Video)


2   Desenhando a Página (“Executar.aspx”)


3   Visualizando a Página em Modo de Execução




                                                            15
HTML 5.0 - Múltiplos Uploads
 Recursos:

  1   Suporte para o Upload de Vários Arquivos


  2   Seção <input type=“File” Multiple=“Multiple”/>


  3   Não precisamos utilizar AsynFileUpload, Múltiplos FileUpload




                                                                     16
Demonstração - Múltiplos Uploads
1   Desenhando/Codificando a Página (“SubirArquivo.aspx”)


2   Setando a Propriedade (“AllowMultiple”) do Controle (“FileUpload”)


3   Visualizando a Página em Modo de Execução


4   Subindo Arquivos para o Servidor




                                                                         17
HTML 5.0 - Formatos de TextBox
 Recursos:

 1   Suporte para Novos Formatos de TextBox


 2   Calendário, Cor, Slider, Url


 3   Resultado final similar aos controles do AjaxControlToolkit


 4   Configuramos o Formato na Propriedade TextMode




                                                                   18
Demonstração - Formatos de TextBox
1   Desenhando a Página (“NovosTipos.aspx”)


2   Setando a Propriedade (“TextMode”)


3   Visualizando a Página em Modo de Execução


4   Testando a Página em Todos os Navegadores


5   Adicionando o Atributo Required


6   Testando a Página em Todos os Navegadores




                                                19
Model Binding
 Recursos:

 1   Vinculação de Dados Simplificada


 2   Sem Controles Assistentes, DataSource, DataBind


 3   Propriedades SelectMethod, UpdateMethod, DeleteMethod


 4   Modelo de Carregamento lembra muito o ASP.NET MVC




                                                             20
Model Binding - Vinculação de Dados



      Simples                Declarativa

 Propriedade DataSource   Propriedade DataSourceID
 Método DataBind          Controles DataSource




                                                     21
Demonstração - Model Binding
1   Desenhando a Página (“ListarClientes.aspx”)


2   Criando as Camadas (DataAccess, Repository)


3   Criando o Método (ListarRegistros), Configurando SelectMethod


4   Visualizando a Página em Modo de Execução


5   Configurando as Propriedades (AllowSorting , DataKeyNames)


6   Visualizando a Página em Modo de Execução




                                                                    22
Demonstração - Model Binding
7    Configurando as Propriedades (AllowPaging, PageSize)


8    Visualizando a Página em Modo de Execução


9    Habilitando a Propriedade AutoGenerateDeleteButton


10   Configurando a Propriedade DeleteMethod


11   Criando o Método DeletarRegistro


12   Visualizando a Página em Modo de Execução




                                                            23
Demonstração - Model Binding
13   Habilitando a Propriedade AutoGenerateEditButton


14   Configurando a Propriedade UpdateMethod


15   Criando o Método AtualizarRegistro


16   Visualizando a Página em Modo de Execução


17   Filtrando o Método ListarRegistro




                                                        24
JavaScript Unobtrusive Validation
 Recursos:

  1   JavaScript (Não Obstrutivo ou Não Evasivo)


  2   Separação do Código (HTML e JavaScript)


  3   Controles de Validação utilizam JQuery e HTML 5.0




                                                          25
Demonstração - Unobtrusive Validation
1   Desenhando a Página (“ValidarControles.aspx”)


2   Visualizando a Página em Modo de Execução


3   Importando a Biblioteca do JQuery para a Pasta/Página


4   Visualizando o Código HTML Gerado


5   Visualizando a Seção UnobtrusiveValidationMode no Web.Config


6   Desabilitando o UnobtrusiveValidationMode e Visualizando a Página




                                                                        26
Biblioteca AntiXSS
 Recursos:

  1   XSS – Técnica para Invasão de WebSites


  2   Hacker Injeta Comandos (HTML, CSS, JavaScript) nos Controles


  3   Biblioteca da Microsoft para Prevensão de Ataques XSS


  4   No ASP .NET 4.5 ela já vem Integrada/Configurada (Web.config)




                                                                      27
Demonstração – Biblioteca AntiXSS
1   Desenhando a Página (“CapturarControlesInvalidos.aspx”)


2   Digitando um Texto NÃO HTML, Clicando no Gravar


3   Digitando um Texto HTML, Clicando no Gravar


4   Setando a Propriedade ValidateRequest(False), Fazer Passo 3 Novamente


5   Codificando o Botão(Gravar), Fazer Passo 3 Novamente


6   Codificando o Botão(Gravar) (Unvalidated), Fazer Passo 3 Novamente




                                                                            28
Demonstração – Biblioteca AntiXSS
7   Visualizando o Unvalidated pelo Quick Watch


8   Visualizando o HTML da Página para Visualizar a Transformação


9   Visualizando o Web.Config , HttpRunTime -> RequestValidationMode




                                                                       29
Conhecendo o ASP .NET 4.5

Conhecendo o ASP .NET 4.5

  • 2.
    Novos Recursos doASP .NET 4.5 Recursos: 1 Bundling e Minification (Agrupar e Remover Textos) 2 Controles e IDE fornecem suporte a Comandos HTML 5.0 3 2 Servidores WEB Integrados (CASSINI e IIS Express) 4 Vinculação de Dados Simplificada 5 JavaScript Não-Invasivo (Separação do Comportamento e Estrutura) 2
  • 3.
    Demonstração - ASP.NET 1 Criando um Projeto ASP.NET Empty Web Application 2 Criando a Estrutura de Pastas do Projeto (Somente Pastas) 3 Visualizando o Menu com os Principais Arquivo (Add) 4 Criando a Página Inicial do Projeto (Principal.aspx) 5 Clicando 1 vez para Visualizar o Preview do CodeBehind 6 Expandindo o CodeBehind e Visualizando a Classe e os Controles/Métodos da Página 3
  • 4.
    Demonstração - ASP.NET 7 Visualizando os Navegadores Instalados (Play) 8 Conhecendo o Page Inspector 9 Executando o Projeto e Visualizando o IIS Express 10 Setando o Visual Studio Development Server (CASINI) 11 Setando o IIS Express como Servidor Web 12 Visualizando o Suporte a HTML5 4
  • 5.
    Demonstração - ASP.NET 13 No Web.Config Edit WCF Configuration 14 Conhecendo o NuGet 5
  • 6.
    Bundling e Minification Recursos: 1 Recursos que Melhoram a Performance de Aplicações Web 2 Diminuem as Requisições entre Máquinas (Cliente x Servidor) 3 Agrupam arquivos por tipo e removem textos não renderizados 4 Até o momento só podemos agrupar Arquivos (CSS e JS) 5 Qualquer Navegador (IE, Firefox, Chrome, Safari, Opera) 6
  • 7.
    Diferença Bundling eMinification Bundling - Agrupamento Os arquivos são agrupados por tipo (Extensão) Redução de Requisições Minification - Redução Texto não utilizados são removidos (Espaços, Quebras, Comentários) Diminuição de Bytes Trafegados 7
  • 8.
    Demonstração - SemBundling 1 Criando a Estrutura de Pastas (“Bundling_Minification”) 2 Criando os Arquivos CSS e JS 3 Desenhando a Página (“PaginaSEM.aspx”) 4 Importando os Arquivos CSS e JS na Página 5 Visualizando a Página em Modo de Execução 6 Monitorando a Requisição e Visualizando os Arquivos (“CSS e JS”) 8
  • 9.
    Demonstração - ComBundling 1 Desenhando a Página (“PaginaCOM.aspx”) 2 Criando os Arquivos CSS e JS 3 Desenhando a Página (“PaginaCOM.aspx”) 4 Importando os Arquivos CSS e JS na Página 5 Criando o Arquivo Global.asax 6 Referenciando a DLL (“System.Web.Optimization”) 9
  • 10.
    Demonstração - ComBundling 7 Monitorando a Requisição e Visualizando os Arquivos (“CSS e JS”) 8 Visualizando o Merge dos Arquivos (Response Body) 9 Colocando Comentários nos Arquivos (“CSS e JS”) 10 Visualizando que os Comentários foram Removido (Response Body) 11 Verificando que o Merge está em Ordem Alfabética (Arquivos Físicos) 10
  • 11.
    HTML 5.0 Recursos: 1 Visual Studio 11 fornece suporte aos Comandos do HTML 5.0 2 DocType padrão dos Projetos ASP .NET 4.5 é o HTML 5.0 3 CodeSnippets para geração de Comandos HTML 5.0 4 Opera é o Navegador que oferece o melhor suporte ao HTML 5.0 11
  • 12.
    HTML 5.0 -Suporte para Áudio Recursos: 1 Suporte Nativo para execução de arquivos de áudio 2 Não precisamos de (Plugins, Seção <Object>) 3 Seção <Audio>, permite a Execução de Áudio no Navegador 4 Formatos Suportados: MP3, Wav e Ogg 12
  • 13.
    Demonstração - HTMLÁudio 1 Criando a Estrutura de Pastas (“HTML5”) 2 Importando o Arquivo (Musica.mp3) para a Pasta (Audio) 3 Desenhando a Página (“Executar.aspx”) 4 Visualizando a Página em Modo de Execução 13
  • 14.
    HTML 5.0 -Suporte para Vídeo Recursos: 1 Suporte Nativo para execução de arquivos de vídeo 2 Não precisamos de (Plugins, Seção <Object>) 3 Seção <Video>, permite a Execução de Vídeos no Navegador 4 Formatos Suportados: MP4, WebM e Ogg 14
  • 15.
    Demonstração - HTMLVídeo 1 Importando o Arquivo (Video.mp4) para a Pasta (Video) 2 Desenhando a Página (“Executar.aspx”) 3 Visualizando a Página em Modo de Execução 15
  • 16.
    HTML 5.0 -Múltiplos Uploads Recursos: 1 Suporte para o Upload de Vários Arquivos 2 Seção <input type=“File” Multiple=“Multiple”/> 3 Não precisamos utilizar AsynFileUpload, Múltiplos FileUpload 16
  • 17.
    Demonstração - MúltiplosUploads 1 Desenhando/Codificando a Página (“SubirArquivo.aspx”) 2 Setando a Propriedade (“AllowMultiple”) do Controle (“FileUpload”) 3 Visualizando a Página em Modo de Execução 4 Subindo Arquivos para o Servidor 17
  • 18.
    HTML 5.0 -Formatos de TextBox Recursos: 1 Suporte para Novos Formatos de TextBox 2 Calendário, Cor, Slider, Url 3 Resultado final similar aos controles do AjaxControlToolkit 4 Configuramos o Formato na Propriedade TextMode 18
  • 19.
    Demonstração - Formatosde TextBox 1 Desenhando a Página (“NovosTipos.aspx”) 2 Setando a Propriedade (“TextMode”) 3 Visualizando a Página em Modo de Execução 4 Testando a Página em Todos os Navegadores 5 Adicionando o Atributo Required 6 Testando a Página em Todos os Navegadores 19
  • 20.
    Model Binding Recursos: 1 Vinculação de Dados Simplificada 2 Sem Controles Assistentes, DataSource, DataBind 3 Propriedades SelectMethod, UpdateMethod, DeleteMethod 4 Modelo de Carregamento lembra muito o ASP.NET MVC 20
  • 21.
    Model Binding -Vinculação de Dados Simples Declarativa Propriedade DataSource Propriedade DataSourceID Método DataBind Controles DataSource 21
  • 22.
    Demonstração - ModelBinding 1 Desenhando a Página (“ListarClientes.aspx”) 2 Criando as Camadas (DataAccess, Repository) 3 Criando o Método (ListarRegistros), Configurando SelectMethod 4 Visualizando a Página em Modo de Execução 5 Configurando as Propriedades (AllowSorting , DataKeyNames) 6 Visualizando a Página em Modo de Execução 22
  • 23.
    Demonstração - ModelBinding 7 Configurando as Propriedades (AllowPaging, PageSize) 8 Visualizando a Página em Modo de Execução 9 Habilitando a Propriedade AutoGenerateDeleteButton 10 Configurando a Propriedade DeleteMethod 11 Criando o Método DeletarRegistro 12 Visualizando a Página em Modo de Execução 23
  • 24.
    Demonstração - ModelBinding 13 Habilitando a Propriedade AutoGenerateEditButton 14 Configurando a Propriedade UpdateMethod 15 Criando o Método AtualizarRegistro 16 Visualizando a Página em Modo de Execução 17 Filtrando o Método ListarRegistro 24
  • 25.
    JavaScript Unobtrusive Validation Recursos: 1 JavaScript (Não Obstrutivo ou Não Evasivo) 2 Separação do Código (HTML e JavaScript) 3 Controles de Validação utilizam JQuery e HTML 5.0 25
  • 26.
    Demonstração - UnobtrusiveValidation 1 Desenhando a Página (“ValidarControles.aspx”) 2 Visualizando a Página em Modo de Execução 3 Importando a Biblioteca do JQuery para a Pasta/Página 4 Visualizando o Código HTML Gerado 5 Visualizando a Seção UnobtrusiveValidationMode no Web.Config 6 Desabilitando o UnobtrusiveValidationMode e Visualizando a Página 26
  • 27.
    Biblioteca AntiXSS Recursos: 1 XSS – Técnica para Invasão de WebSites 2 Hacker Injeta Comandos (HTML, CSS, JavaScript) nos Controles 3 Biblioteca da Microsoft para Prevensão de Ataques XSS 4 No ASP .NET 4.5 ela já vem Integrada/Configurada (Web.config) 27
  • 28.
    Demonstração – BibliotecaAntiXSS 1 Desenhando a Página (“CapturarControlesInvalidos.aspx”) 2 Digitando um Texto NÃO HTML, Clicando no Gravar 3 Digitando um Texto HTML, Clicando no Gravar 4 Setando a Propriedade ValidateRequest(False), Fazer Passo 3 Novamente 5 Codificando o Botão(Gravar), Fazer Passo 3 Novamente 6 Codificando o Botão(Gravar) (Unvalidated), Fazer Passo 3 Novamente 28
  • 29.
    Demonstração – BibliotecaAntiXSS 7 Visualizando o Unvalidated pelo Quick Watch 8 Visualizando o HTML da Página para Visualizar a Transformação 9 Visualizando o Web.Config , HttpRunTime -> RequestValidationMode 29