Introdução MVC
 Considerações:

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


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


 3   As camadas representam responsabilidades (Papéis)




                                                                 2
Resumo do MVC




 Models                 Views                   Controllers
 Classes de Modelo      São as páginas e        Classes que trabalham
 implementam a lógica   exibem as informações   com o Modelo e
 do domínio (Tabelas)   do Modelo               decidem qual View será
                                                executada




                                                                         3
Frameworks MVC


     Spring MVC   Zend
        Java      PHP



       Django     Rails
       Python     Ruby




                          4
ASP.NET MVC
 Considerações:

 1   Incluído na versão 3.5


 2   Atualmente se encontra na versão 4.0


 3   Alternativa ao ASP.NET (WebForms, WebPages)


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


5    Principal Assembly: System.Web.Mvc



                                                         5
Funcionamento do ASP.NET MVC
 Navegador       URL Routing           Controller               Model   View




        Requisição

                           Instancia




                         Chama Ação                 Instancia




                                              Carrega (Página)




                                                                               6
Benefícios do ASP.NET MVC
 Considerações:

 1   Controle completo do HTML da Página


 2   Separação de Camadas (MVC)


 3   Não existe Viewstate


 4   Facilidade para Testes Unitários




                                           7
Demonstração
1   Criando um Projeto em ASP.NET MVC 2.0


2   Conhecendo as Pastas (Content, Scripts)


3   Conhecendo as Pastas (Models, Views, Controllers)


4   Conhecendo a Pasta (Shared)




                                                        8
Resumo dos Modelos (MODEL)
 Considerações:

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


 2   Armazenam os dados do domínio (Tabelas)


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




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




                                                              10
Resumo dos Controles (CONTROLLER)
 Considerações:

 1   Manipulam as requisições enviadas pelo browser


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


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




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


2   Visualizando a Action Index


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


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




                                                                        12
Resumo das Páginas (VIEW)
 Considerações:

 1   Armazenam o HTML que será renderizado pelo browser


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


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




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


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


3   Criando Partial Views (Titulo, Rodape)


4   Incluindo as Partial Views (Titulo, Rodape) na página de Linguagem/Editar


5   Criando um arquivo de Estilo e aplicando na página de Linguagem/Editar


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




                                                                                14
ASP.NET MVC Scaffolding
 Considerações:

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


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




                                                                  15
Demonstração
1   Criando um projeto utilizando o ASP.NET MVC Scaffolding




                                                              16
ASP.NET MVC 3.0
 Considerações:

 1   View Engine Razor


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




                                              17
Demonstração
1   Criando um projeto utilizando o ASP.NET MVC 3.0 Scaffolding




                                                                  18
ASP.NET MVC

ASP.NET MVC

  • 2.
    Introdução MVC Considerações: 1 MVC é um padrão de projeto que facilita o desenvolvimento 2 Composto por 3 Camadas (Model, View, Controller) 3 As camadas representam responsabilidades (Papéis) 2
  • 3.
    Resumo do MVC Models Views Controllers Classes de Modelo São as páginas e Classes que trabalham implementam a lógica exibem as informações com o Modelo e do domínio (Tabelas) do Modelo decidem qual View será executada 3
  • 4.
    Frameworks MVC Spring MVC Zend Java PHP Django Rails Python Ruby 4
  • 5.
    ASP.NET MVC Considerações: 1 Incluído na versão 3.5 2 Atualmente se encontra na versão 4.0 3 Alternativa ao ASP.NET (WebForms, WebPages) 4 ASP.NET Routing (Requisições Mapeadas para Ações) 5 Principal Assembly: System.Web.Mvc 5
  • 6.
    Funcionamento do ASP.NETMVC Navegador URL Routing Controller Model View Requisição Instancia Chama Ação Instancia Carrega (Página) 6
  • 7.
    Benefícios do ASP.NETMVC Considerações: 1 Controle completo do HTML da Página 2 Separação de Camadas (MVC) 3 Não existe Viewstate 4 Facilidade para Testes Unitários 7
  • 8.
    Demonstração 1 Criando um Projeto em ASP.NET MVC 2.0 2 Conhecendo as Pastas (Content, Scripts) 3 Conhecendo as Pastas (Models, Views, Controllers) 4 Conhecendo a Pasta (Shared) 8
  • 9.
    Resumo dos Modelos(MODEL) Considerações: 1 Representam o domínio (Tabelas) da aplicação 2 Armazenam os dados do domínio (Tabelas) 3 Podem ser criados de 3 formas: Manual, L2S e EF 9
  • 10.
    Demonstração 1 Criando as Classes de Modelo (Linguagem, Desenvolvedor) 10
  • 11.
    Resumo dos Controles(CONTROLLER) Considerações: 1 Manipulam as requisições enviadas pelo browser 2 Carregam as Páginas (Views) com os dados das Tabelas (Models) 3 Possuem Métodos (Actions) que definem as ações da páginas 11
  • 12.
    Demonstração 1 Criando a Classe de Controle (Linguagem) 2 Visualizando a Action Index 3 Criando a Classe de Controle (Desenvolvedor) com Métodos Scaffold 4 Efetuando a Requisição no Controle (Linguagem), Action (Index) 12
  • 13.
    Resumo das Páginas(VIEW) Considerações: 1 Armazenam o HTML que será renderizado pelo browser 2 Executadas pelo Controller e recebem os Models como parâmetro 3 Existem 2 Tipos de View: View(ASPX) e Partial View(ASCX) 13
  • 14.
    Demonstração 1 Criando a View da Action Linguagem/Index 2 Criando a Action Linguagem/Editar e View Editar (Typed View) 3 Criando Partial Views (Titulo, Rodape) 4 Incluindo as Partial Views (Titulo, Rodape) na página de Linguagem/Editar 5 Criando um arquivo de Estilo e aplicando na página de Linguagem/Editar 6 Criando uma Master Page e página Filho (Desenvolvedor/Index) 14
  • 15.
    ASP.NET MVC Scaffolding Considerações: 1 Geração automática de páginas (Views) a partir do Modelo 2 Templates para páginas (Lista, Inclusão, Edição, Exclusão) 15
  • 16.
    Demonstração 1 Criando um projeto utilizando o ASP.NET MVC Scaffolding 16
  • 17.
    ASP.NET MVC 3.0 Considerações: 1 View Engine Razor 2 Redução do código de script (<% por @) 17
  • 18.
    Demonstração 1 Criando um projeto utilizando o ASP.NET MVC 3.0 Scaffolding 18