ASP .NET MVC na Prática
Caio Proiete
http://netponto.org
2ª Reunião Presencial - 19/09/2009
Slide 2
Slide 2 text
Patrocinadores desta reunião
Slide 3
Slide 3 text
Caio Proiete
+9 anos de experiência profissional em TI
Consultor da Novabase
Formador da Ciclo
Microsoft MVP, MCT
http://caioproiete.net
Slide 4
Slide 4 text
Agenda
• Introdução ao ASP .NET MVC
– Evolução / Extensões
– Funcionamento
• Demonstrações
– Projecto padrão (File -> New)
– Criação de Controllers e Views
– Criação de Rotas
– Formulários e Validações
Slide 5
Slide 5 text
ASP .NET MVC: Uma Nova Opção
• Novo framework para o ASP .NET, que
utiliza o MVC design pattern
• Agora temos duas opções:
–ASP .NET WebForms
–ASP .NET MVC
• MVC = Model-View-Controller
Slide 6
Slide 6 text
ASP .NET MVC: Uma Nova Opção
• Total controlo do HTML gerado
• Total controlo das URLs (Clean URLs)
• Permite automatizar testes na interface
gráfica com facilidade
• Extremamente extensível
Slide 7
Slide 7 text
ASP .NET MVC: Novo Paradigma
“There is no spoon page”
Slide 8
Slide 8 text
ASP .NET MVC: Novo Paradigma
Trabalhamos com Rotas, ao invés de
endereços de páginas / ficheiros
Exemplo:
http://loja.pt/produtos/DVDs
Slide 9
Slide 9 text
ASP .NET MVC: Novo Paradigma
“There is no spoon ViewState, PostBacks
nor runat=\“server\” events”
Slide 10
Slide 10 text
ASP .NET MVC: Novo Paradigma
Deixamos de utilizar ViewState, Eventos
de controlos e páginas, PostBack e outros
conceitos que não nunca existiram em
aplicações Web (!)
Slide 11
Slide 11 text
Evolução do ASP .NET MVC
• Oficialmente, estamos na versão 1.0
RTM e já temos a “Preview 1” da versão
2.0
• O próximo release provavelmente será
uma versão 2.0 Beta, e não “Preview”
Slide 12
Slide 12 text
Evolução do ASP .NET MVC
ASP.NET MVC Futures
–Novas funcionalidades experimentais
desenvolvidas pela equipa oficial do ASP
.NET MVC
–De acordo com o feedback, decidem (ou
não) incorporar nas próximas versões
Slide 13
Slide 13 text
Evolução do ASP .NET MVC
MVC Contrib
–Projecto open-source desenvolvido pela
comunidade, com novas funcionalidades
para o ASP .NET MVC
Slide 14
Slide 14 text
Funcionamento do ASP .NET MVC
Request
Controller
Requisição é redireccionada para o Controller
Slide 15
Slide 15 text
Funcionamento do ASP .NET MVC
Request
Controller
Controller processa e forma um modelo de dados
Slide 16
Slide 16 text
Funcionamento do ASP .NET MVC
Request
ViewData
Controller
View
Esse modelo de dados é enviado para a View
Slide 17
Slide 17 text
Funcionamento do ASP .NET MVC
Request
ViewData
Controller
View
A View cria uma representação visual desses dados
Slide 18
Slide 18 text
Funcionamento do ASP .NET MVC
Request
ViewData
Controller
Response
View
E essa representação é enviada de volta para o navegador
Slide 19
Slide 19 text
Projecto padrão
File->New
Slide 20
Slide 20 text
Criação de
Controllers e Views
Slide 21
Slide 21 text
Criação de Rotas
Slide 22
Slide 22 text
Formulários e
Validações
Slide 23
Slide 23 text
Referências
Site Oficial
– http://asp.net/mvc
Blog do Scott Guthrie (Microsoft)
– http://weblogs.asp.net/scottgu
Blog do Phil Haack (Microsoft)
– http://haacked.com
NerdDinner ASP.NET MVC Tutorial
– http://shrinkster.com/18m9
Slide 24
Slide 24 text
Referências
ASP.NET MVC Futures
– http://aspnet.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=24471
MVC Contrib
– http://mvccontrib.codeplex.com
ASP.NET Routing Debugger
– http://haacked.com/archive/0001/01/01/url-routing-debugger.aspx