asp.net mvc

19
ASP.NET MVC Leonardo Lourenço Silva MCT, MCPD, MCTS, MCP http:// leolosi.wordpress.com http://linkedin.com/ in/leolosi http://slideshare.net/ leolosi http://grou.ps/

Upload: leonardo-lourenco-silva

Post on 01-Jul-2015

10.963 views

Category:

Technology


3 download

TRANSCRIPT

Page 1: ASP.NET MVC

ASP.NET MVCLeonardo Lourenço SilvaMCT, MCPD, MCTS, MCP

http://leolosi.wordpress.comhttp://linkedin.com/in/leolosihttp://slideshare.net/leolosihttp://grou.ps/dotnetcoders

Page 2: ASP.NET MVC

Introdução MVC

2

Considerações:Considerações:

MVC é um padrão de projeto que facilita o desenvolvimento MVC é um padrão de projeto que facilita o desenvolvimento11

Composto por 3 Camadas (Model, View, Controller) Composto por 3 Camadas (Model, View, Controller)22

As camadas representam responsabilidades (Papéis) As camadas representam responsabilidades (Papéis)33

Page 3: ASP.NET MVC

Resumo do MVC

3

Models

Classes de Modelo implementam a lógica do domínio (Tabelas)

Models

Classes de Modelo implementam a lógica do domínio (Tabelas)

Views

São as páginas e exibem as informações do Modelo

Views

São as páginas e exibem as informações do Modelo

Controllers

Classes que trabalham com o Modelo e decidem qual View será executada

Controllers

Classes que trabalham com o Modelo e decidem qual View será executada

Page 4: ASP.NET MVC

Frameworks MVC

4

Spring MVCJava

ZendPHP

DjangoPython

RailsRuby

Page 5: ASP.NET MVC

ASP.NET MVC

5

Considerações:Considerações:

Incluído na versão 3.5 Incluído na versão 3.511

Atualmente se encontra na versão 4.0 Atualmente se encontra na versão 4.022

Alternativa ao ASP.NET (WebForms, WebPages) Alternativa ao ASP.NET (WebForms, WebPages)33

ASP.NET Routing (Requisições Mapeadas para Ações) ASP.NET Routing (Requisições Mapeadas para Ações) 44

Principal Assembly: System.Web.Mvc Principal Assembly: System.Web.Mvc 55

Page 6: ASP.NET MVC

Funcionamento do ASP.NET MVC

6

NavegadorNavegador URL Routing

URL Routing ControllerController ModelModel ViewView

Requisição

Instancia

Chama Ação Instancia

Carrega (Página)

Page 7: ASP.NET MVC

Benefícios do ASP.NET MVC

7

Considerações:Considerações:

Controle completo do HTML da Página Controle completo do HTML da Página11

Separação de Camadas (MVC) Separação de Camadas (MVC)22

Não existe Viewstate Não existe Viewstate 33

Facilidade para Testes Unitários Facilidade para Testes Unitários44

Page 8: ASP.NET MVC

8

Demonstração Criando um Projeto em ASP.NET MVC 2.011

Conhecendo as Pastas (Content, Scripts) 22

Conhecendo as Pastas (Models, Views, Controllers) 33

Conhecendo a Pasta (Shared) 44

Page 9: ASP.NET MVC

Resumo dos Modelos (MODEL)

9

Considerações:Considerações:

Representam o domínio (Tabelas) da aplicação Representam o domínio (Tabelas) da aplicação11

Armazenam os dados do domínio (Tabelas) Armazenam os dados do domínio (Tabelas)22

Podem ser criados de 3 formas: Manual, L2S e EF Podem ser criados de 3 formas: Manual, L2S e EF33

Page 10: ASP.NET MVC

10

Demonstração Criando as Classes de Modelo (Linguagem, Desenvolvedor)11

Page 11: ASP.NET MVC

Resumo dos Controles (CONTROLLER)

11

Considerações:Considerações:

Manipulam as requisições enviadas pelo browser Manipulam as requisições enviadas pelo browser11

Carregam as Páginas (Views) com os dados das Tabelas (Models) Carregam as Páginas (Views) com os dados das Tabelas (Models)22

Possuem Métodos (Actions) que definem as ações da páginas Possuem Métodos (Actions) que definem as ações da páginas 33

Page 12: ASP.NET MVC

12

Demonstração Criando a Classe de Controle (Linguagem)11

Visualizando a Action Index22

Criando a Classe de Controle (Desenvolvedor) com Métodos

Scaffold33

Efetuando a Requisição no Controle (Linguagem), Action (Index)44

Page 13: ASP.NET MVC

Resumo das Páginas (VIEW)

13

Considerações:Considerações:

Armazenam o HTML que será renderizado pelo browser Armazenam o HTML que será renderizado pelo browser11

Executadas pelo Controller e recebem os Models como parâmetro Executadas pelo Controller e recebem os Models como parâmetro22

Existem 2 Tipos de View: View(ASPX) e Partial View(ASCX) Existem 2 Tipos de View: View(ASPX) e Partial View(ASCX) 33

Page 14: ASP.NET MVC

14

Demonstração Criando a View da Action Linguagem/Index 11

Criando a Action Linguagem/Editar e View Editar (Typed View)22

Criando Partial Views (Titulo, Rodape)33

Incluindo as Partial Views (Titulo, Rodape) na página de

Linguagem/Editar44

Criando um arquivo de Estilo e aplicando na página de

Linguagem/Editar55

Criando uma Master Page e página Filho (Desenvolvedor/Index)66

Page 15: ASP.NET MVC

ASP.NET MVC Scaffolding

15

Considerações:Considerações:

Geração automática de páginas (Views) a partir do Modelo Geração automática de páginas (Views) a partir do Modelo11

Templates para páginas (Lista, Inclusão, Edição, Exclusão) Templates para páginas (Lista, Inclusão, Edição, Exclusão)22

Page 16: ASP.NET MVC

16

Demonstração Criando um projeto utilizando o ASP.NET MVC Scaffolding11

Page 17: ASP.NET MVC

ASP.NET MVC 3.0

17

Considerações:Considerações:

View Engine Razor View Engine Razor11

Redução do código de script (<% por @) Redução do código de script (<% por @)22

Page 18: ASP.NET MVC

18

Demonstração Criando um projeto utilizando o ASP.NET MVC 3.0 Scaffolding11

Page 19: ASP.NET MVC

© 2011 Microsoft Corporation. All rights reserved. Microsoft, MSDN, the MSDN logo, and [list other trademarks referenced] are trademarks of the Microsoft group of companies.  The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation.  Because Microsoft must respond

to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. 

MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED, OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Obrigado!