SlideShare uma empresa Scribd logo
1 de 23
365ON
LAB-ON : ASP.NET MVC
Fundamentos: 01-O
Agenda
• O que é ASP.NET MVC
O que é ASP.NET MVC
• Framework para desenvolvimento de Web app;
• Implementa o padrão arquitetural –Model, View, Controller(MVC);
• Separa lógica de input, logica de negocio e ui;
• Consiste em um Separação de Responsabilidade:
• Model(ModelView): Objetos Modelo, Retorna e Mantem estado de objetos
modelos em um meio de persistência.
• View: UI
• Controller: Controlar a Interação com o usuário, faz a ligação entre model e
view.
• Aplica vários padrões : DRY, Conversion Over Configuration,
Workflow
Url Routing
• Engine de roteamento de url
• Suporte a rotas customizadas
• App_Start/RouteConfig.cs
Controller
• Controla requisições
• Executa a lógica apropriada
• Chama a View para geração do resposta em Html
Controlle : Action
Apenas um método
Controller : Action > Result
• ViewResult, RedirectToRouteResult, ContentResult, FileResult,
JsonResult, RedirectResult
View
• Views são criadas usando Razor View Engine
• Controller Retornam ActionResult
• Por Padrão todas as view compartilham o mesmo layout page
ViewBag
• Dynamic object
• Transportar dados entre view e layout, Controller e View/Layout
ViewBag
• Dynamic object
• Transportar dados entre view e layout, Controller e View/Layout
View : Razor View Engine
• Server Side Code
• Syntax compacta
• Integrado com c# e vb
• @ é marcado de blocos
• Ex.:
• @foreach(var p in produtos){<li>@p.Id</li> }
• @DateTime.Now.ToString()
• @if(produto.Valor < 1000){<p>Este produto não possui desconto</>}
• @{int numero = 1; stringe nome = “Alex”} <p>meu nome é @nome</p>
Helpers
• @Html.TextBoxFor(m => m.ProductID)
• Html.ActionLink(“Edit", “Edit", new{id=item.ID)}
Layout(MasterPage)
• @RenderBody()
• Desclaração Explicita de um layout @{LayoutPage =
“MeuLayout.cshtml”
• @RenderSection(“menu”, option:true)
• @Body()
• @section menu{}
Model
Model
Strongly Typed Models
• Prover uma forma tipada de passar dandos entre a controller e a view
Http Metodos
• HttpGet e HttpPost
• Tudo que for modificar dados por boa prática utiliza-se HttpPost
• HttpGet deve ser utilizado quando nenhum informação for modificar
server side.
Validation
Validation
Validation
Bundle
• Recurso que permite injetar conteúdo como css, javascript de forma
simples e re-ultilizavel
Exemplo : Controller > Detalhes

Mais conteúdo relacionado

Mais procurados

ASP.NET MVC 4 - Introdução - Parte I
ASP.NET MVC 4 - Introdução - Parte IASP.NET MVC 4 - Introdução - Parte I
ASP.NET MVC 4 - Introdução - Parte ICarlos Atila Abreu
 
Workshop Mundo Senai - Hello, Angular.js
Workshop Mundo Senai - Hello, Angular.jsWorkshop Mundo Senai - Hello, Angular.js
Workshop Mundo Senai - Hello, Angular.jsFábio Elísio
 
ASP.NET MVC 4 - Part III - Views (Continuação: Part II)
ASP.NET MVC 4 - Part III - Views (Continuação: Part II)ASP.NET MVC 4 - Part III - Views (Continuação: Part II)
ASP.NET MVC 4 - Part III - Views (Continuação: Part II)Carlos Atila Abreu
 
Entity framework migrations
Entity framework migrationsEntity framework migrations
Entity framework migrationsPriscila Mayumi
 
Construindo aplicações leves e performáticas com ASP.NET Core 1.0
Construindo aplicações leves e performáticas com ASP.NET Core 1.0Construindo aplicações leves e performáticas com ASP.NET Core 1.0
Construindo aplicações leves e performáticas com ASP.NET Core 1.0Fabrício Lopes Sanchez
 
Web Server Controls e Banco de Dados
Web Server Controls e Banco de DadosWeb Server Controls e Banco de Dados
Web Server Controls e Banco de DadosOrlando Junior
 
HUGSP#6 Opus uDSL - Uma DSL para Microserviços
HUGSP#6 Opus uDSL - Uma DSL para MicroserviçosHUGSP#6 Opus uDSL - Uma DSL para Microserviços
HUGSP#6 Opus uDSL - Uma DSL para MicroserviçosPhilippe Sevestre
 
BluDotNet - Entity Framework Code First Migrations
BluDotNet - Entity Framework Code First MigrationsBluDotNet - Entity Framework Code First Migrations
BluDotNet - Entity Framework Code First MigrationsRafael Leonhardt
 
JavaOne LATAM 2016 - RESTful Services Simplificado com Spring Data REST
JavaOne LATAM 2016 - RESTful Services Simplificado com Spring Data RESTJavaOne LATAM 2016 - RESTful Services Simplificado com Spring Data REST
JavaOne LATAM 2016 - RESTful Services Simplificado com Spring Data RESTRodrigo Cândido da Silva
 

Mais procurados (13)

Java web
Java webJava web
Java web
 
ASP.NET MVC 4 - Introdução - Parte I
ASP.NET MVC 4 - Introdução - Parte IASP.NET MVC 4 - Introdução - Parte I
ASP.NET MVC 4 - Introdução - Parte I
 
Workshop Mundo Senai - Hello, Angular.js
Workshop Mundo Senai - Hello, Angular.jsWorkshop Mundo Senai - Hello, Angular.js
Workshop Mundo Senai - Hello, Angular.js
 
ASP.NET MVC 4 - Part III - Views (Continuação: Part II)
ASP.NET MVC 4 - Part III - Views (Continuação: Part II)ASP.NET MVC 4 - Part III - Views (Continuação: Part II)
ASP.NET MVC 4 - Part III - Views (Continuação: Part II)
 
Entity framework migrations
Entity framework migrationsEntity framework migrations
Entity framework migrations
 
Construindo aplicações leves e performáticas com ASP.NET Core 1.0
Construindo aplicações leves e performáticas com ASP.NET Core 1.0Construindo aplicações leves e performáticas com ASP.NET Core 1.0
Construindo aplicações leves e performáticas com ASP.NET Core 1.0
 
Ajax
AjaxAjax
Ajax
 
Web Server Controls e Banco de Dados
Web Server Controls e Banco de DadosWeb Server Controls e Banco de Dados
Web Server Controls e Banco de Dados
 
MVC na plataforma JEE
MVC na plataforma JEEMVC na plataforma JEE
MVC na plataforma JEE
 
HUGSP#6 Opus uDSL - Uma DSL para Microserviços
HUGSP#6 Opus uDSL - Uma DSL para MicroserviçosHUGSP#6 Opus uDSL - Uma DSL para Microserviços
HUGSP#6 Opus uDSL - Uma DSL para Microserviços
 
BluDotNet - Entity Framework Code First Migrations
BluDotNet - Entity Framework Code First MigrationsBluDotNet - Entity Framework Code First Migrations
BluDotNet - Entity Framework Code First Migrations
 
JavaOne LATAM 2016 - RESTful Services Simplificado com Spring Data REST
JavaOne LATAM 2016 - RESTful Services Simplificado com Spring Data RESTJavaOne LATAM 2016 - RESTful Services Simplificado com Spring Data REST
JavaOne LATAM 2016 - RESTful Services Simplificado com Spring Data REST
 
Asp.net
Asp.netAsp.net
Asp.net
 

Destaque

Cinco joyas del congreso mundial de moviles
Cinco joyas del congreso mundial de movilesCinco joyas del congreso mundial de moviles
Cinco joyas del congreso mundial de moviles'Danni Estrada Herrera
 
Punta for Sale #63 - Agosto-Septiembre 2013
Punta for Sale #63 - Agosto-Septiembre 2013Punta for Sale #63 - Agosto-Septiembre 2013
Punta for Sale #63 - Agosto-Septiembre 2013puntaforsale
 
Progresiones geométricas
Progresiones geométricasProgresiones geométricas
Progresiones geométricasJaiime Ibarra
 
0.1 maquinas simples grado 8 a
0.1 maquinas simples grado 8 a0.1 maquinas simples grado 8 a
0.1 maquinas simples grado 8 aalexadimarzio19
 
2016_amalone_resume
2016_amalone_resume2016_amalone_resume
2016_amalone_resumeAndy Malone
 
Centrefold Gallery Pitch - Leverage Your Idea 2016
Centrefold Gallery Pitch - Leverage Your Idea 2016Centrefold Gallery Pitch - Leverage Your Idea 2016
Centrefold Gallery Pitch - Leverage Your Idea 2016Sandro Papais
 
Maldonado _Yerly_ Actividad 4_presentación
Maldonado _Yerly_ Actividad 4_presentaciónMaldonado _Yerly_ Actividad 4_presentación
Maldonado _Yerly_ Actividad 4_presentaciónyerly maldonado
 
Inamdar_et_al_ACP_2016
Inamdar_et_al_ACP_2016Inamdar_et_al_ACP_2016
Inamdar_et_al_ACP_2016Aniket Inamdar
 
Una abundancia de katherines l john green
Una abundancia de katherines l john greenUna abundancia de katherines l john green
Una abundancia de katherines l john greenMaarce Ospina Rodriguez
 
John_Ryan_Thesis_Final
John_Ryan_Thesis_FinalJohn_Ryan_Thesis_Final
John_Ryan_Thesis_FinalJohn Ryan
 
Inamdar_et_al_AIAA_2016
Inamdar_et_al_AIAA_2016Inamdar_et_al_AIAA_2016
Inamdar_et_al_AIAA_2016Aniket Inamdar
 
space-exploration
space-explorationspace-exploration
space-explorationahby yas
 

Destaque (18)

Lactancia materna en el prematuro
Lactancia materna en el prematuro Lactancia materna en el prematuro
Lactancia materna en el prematuro
 
Cinco joyas del congreso mundial de moviles
Cinco joyas del congreso mundial de movilesCinco joyas del congreso mundial de moviles
Cinco joyas del congreso mundial de moviles
 
Punta for Sale #63 - Agosto-Septiembre 2013
Punta for Sale #63 - Agosto-Septiembre 2013Punta for Sale #63 - Agosto-Septiembre 2013
Punta for Sale #63 - Agosto-Septiembre 2013
 
Progresiones geométricas
Progresiones geométricasProgresiones geométricas
Progresiones geométricas
 
0.1 maquinas simples grado 8 a
0.1 maquinas simples grado 8 a0.1 maquinas simples grado 8 a
0.1 maquinas simples grado 8 a
 
2016_amalone_resume
2016_amalone_resume2016_amalone_resume
2016_amalone_resume
 
Eu sou assim
Eu sou assimEu sou assim
Eu sou assim
 
Centrefold Gallery Pitch - Leverage Your Idea 2016
Centrefold Gallery Pitch - Leverage Your Idea 2016Centrefold Gallery Pitch - Leverage Your Idea 2016
Centrefold Gallery Pitch - Leverage Your Idea 2016
 
Números naturales
Números naturalesNúmeros naturales
Números naturales
 
Maldonado _Yerly_ Actividad 4_presentación
Maldonado _Yerly_ Actividad 4_presentaciónMaldonado _Yerly_ Actividad 4_presentación
Maldonado _Yerly_ Actividad 4_presentación
 
Inamdar_et_al_ACP_2016
Inamdar_et_al_ACP_2016Inamdar_et_al_ACP_2016
Inamdar_et_al_ACP_2016
 
Una abundancia de katherines l john green
Una abundancia de katherines l john greenUna abundancia de katherines l john green
Una abundancia de katherines l john green
 
CURRICULUM VITAE. 2016
CURRICULUM VITAE. 2016CURRICULUM VITAE. 2016
CURRICULUM VITAE. 2016
 
John_Ryan_Thesis_Final
John_Ryan_Thesis_FinalJohn_Ryan_Thesis_Final
John_Ryan_Thesis_Final
 
Integrado 4 karen fernandez
Integrado 4 karen fernandezIntegrado 4 karen fernandez
Integrado 4 karen fernandez
 
Inamdar_et_al_AIAA_2016
Inamdar_et_al_AIAA_2016Inamdar_et_al_AIAA_2016
Inamdar_et_al_AIAA_2016
 
Terms and conditions
Terms and conditionsTerms and conditions
Terms and conditions
 
space-exploration
space-explorationspace-exploration
space-exploration
 

Semelhante a 365on Lab Asp.Net MVC Fundamentos 01 Overview

ASP.NET MVC - Alexandre Tarifa
ASP.NET MVC - Alexandre TarifaASP.NET MVC - Alexandre Tarifa
ASP.NET MVC - Alexandre Tarifaguestea329c
 
[CLPE] Novidades do Asp.net mvc 2
[CLPE] Novidades do Asp.net mvc 2[CLPE] Novidades do Asp.net mvc 2
[CLPE] Novidades do Asp.net mvc 2Felipe Pimentel
 
Backbone.js nas trincheiras
Backbone.js nas trincheirasBackbone.js nas trincheiras
Backbone.js nas trincheirasLambda 3
 
JSF com Primefaces
JSF com PrimefacesJSF com Primefaces
JSF com PrimefacesFabio Noth
 
Desenvolvendo aplicações com Angular e Laravel no Back-end
Desenvolvendo aplicações com Angular e Laravel no Back-endDesenvolvendo aplicações com Angular e Laravel no Back-end
Desenvolvendo aplicações com Angular e Laravel no Back-endGiovanny Valente
 
LambdaDay: Backbone.js
LambdaDay: Backbone.jsLambdaDay: Backbone.js
LambdaDay: Backbone.jsGiovanni Bassi
 
Arquitetura Model View Controller
Arquitetura Model View ControllerArquitetura Model View Controller
Arquitetura Model View ControllerLourdilene Souza
 
Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...
Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...
Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...Daniel Makiyama
 
TDC 2014 - Arquitetura front-end com AngularJS
TDC 2014 - Arquitetura front-end com AngularJSTDC 2014 - Arquitetura front-end com AngularJS
TDC 2014 - Arquitetura front-end com AngularJSLeonardo Zanivan
 
Curso de Ruby on Rails - Aula 01
Curso de Ruby on Rails - Aula 01Curso de Ruby on Rails - Aula 01
Curso de Ruby on Rails - Aula 01Maurício Linhares
 
Meu projeto final - Neobase 2.0
Meu projeto final - Neobase 2.0Meu projeto final - Neobase 2.0
Meu projeto final - Neobase 2.0Saulo Vallory
 
Desenvolvimento Web com CakePHP
Desenvolvimento Web com CakePHPDesenvolvimento Web com CakePHP
Desenvolvimento Web com CakePHPSérgio Vilar
 

Semelhante a 365on Lab Asp.Net MVC Fundamentos 01 Overview (20)

ASP.NET MVC - Alexandre Tarifa
ASP.NET MVC - Alexandre TarifaASP.NET MVC - Alexandre Tarifa
ASP.NET MVC - Alexandre Tarifa
 
ASP.NET MVC
ASP.NET MVCASP.NET MVC
ASP.NET MVC
 
Palestra ASP.NET MVC
Palestra ASP.NET MVCPalestra ASP.NET MVC
Palestra ASP.NET MVC
 
[CLPE] Novidades do Asp.net mvc 2
[CLPE] Novidades do Asp.net mvc 2[CLPE] Novidades do Asp.net mvc 2
[CLPE] Novidades do Asp.net mvc 2
 
ApresentaçãO Mvc
ApresentaçãO MvcApresentaçãO Mvc
ApresentaçãO Mvc
 
Apresentação M V C
Apresentação M V CApresentação M V C
Apresentação M V C
 
Backbone.js nas trincheiras
Backbone.js nas trincheirasBackbone.js nas trincheiras
Backbone.js nas trincheiras
 
JSF com Primefaces
JSF com PrimefacesJSF com Primefaces
JSF com Primefaces
 
Desenvolvendo aplicações com Angular e Laravel no Back-end
Desenvolvendo aplicações com Angular e Laravel no Back-endDesenvolvendo aplicações com Angular e Laravel no Back-end
Desenvolvendo aplicações com Angular e Laravel no Back-end
 
Asp.Net Mvc Dev Days09 V3 Pt
Asp.Net Mvc Dev Days09 V3 PtAsp.Net Mvc Dev Days09 V3 Pt
Asp.Net Mvc Dev Days09 V3 Pt
 
Curso AngularJS - Parte 1
Curso AngularJS - Parte 1Curso AngularJS - Parte 1
Curso AngularJS - Parte 1
 
LambdaDay: Backbone.js
LambdaDay: Backbone.jsLambdaDay: Backbone.js
LambdaDay: Backbone.js
 
Gradle spring-hateoas-Lombok
Gradle spring-hateoas-LombokGradle spring-hateoas-Lombok
Gradle spring-hateoas-Lombok
 
Arquitetura Model View Controller
Arquitetura Model View ControllerArquitetura Model View Controller
Arquitetura Model View Controller
 
Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...
Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...
Aprendendo Na Prática: Aplicativos Web Com Asp.Net MVC em C# e Entity Framewo...
 
Spring MVC - QConSP
Spring MVC - QConSPSpring MVC - QConSP
Spring MVC - QConSP
 
TDC 2014 - Arquitetura front-end com AngularJS
TDC 2014 - Arquitetura front-end com AngularJSTDC 2014 - Arquitetura front-end com AngularJS
TDC 2014 - Arquitetura front-end com AngularJS
 
Curso de Ruby on Rails - Aula 01
Curso de Ruby on Rails - Aula 01Curso de Ruby on Rails - Aula 01
Curso de Ruby on Rails - Aula 01
 
Meu projeto final - Neobase 2.0
Meu projeto final - Neobase 2.0Meu projeto final - Neobase 2.0
Meu projeto final - Neobase 2.0
 
Desenvolvimento Web com CakePHP
Desenvolvimento Web com CakePHPDesenvolvimento Web com CakePHP
Desenvolvimento Web com CakePHP
 

365on Lab Asp.Net MVC Fundamentos 01 Overview

  • 1. 365ON LAB-ON : ASP.NET MVC Fundamentos: 01-O
  • 2. Agenda • O que é ASP.NET MVC
  • 3. O que é ASP.NET MVC • Framework para desenvolvimento de Web app; • Implementa o padrão arquitetural –Model, View, Controller(MVC); • Separa lógica de input, logica de negocio e ui; • Consiste em um Separação de Responsabilidade: • Model(ModelView): Objetos Modelo, Retorna e Mantem estado de objetos modelos em um meio de persistência. • View: UI • Controller: Controlar a Interação com o usuário, faz a ligação entre model e view. • Aplica vários padrões : DRY, Conversion Over Configuration,
  • 5. Url Routing • Engine de roteamento de url • Suporte a rotas customizadas • App_Start/RouteConfig.cs
  • 6. Controller • Controla requisições • Executa a lógica apropriada • Chama a View para geração do resposta em Html
  • 8. Controller : Action > Result • ViewResult, RedirectToRouteResult, ContentResult, FileResult, JsonResult, RedirectResult
  • 9. View • Views são criadas usando Razor View Engine • Controller Retornam ActionResult • Por Padrão todas as view compartilham o mesmo layout page
  • 10. ViewBag • Dynamic object • Transportar dados entre view e layout, Controller e View/Layout
  • 11. ViewBag • Dynamic object • Transportar dados entre view e layout, Controller e View/Layout
  • 12. View : Razor View Engine • Server Side Code • Syntax compacta • Integrado com c# e vb • @ é marcado de blocos • Ex.: • @foreach(var p in produtos){<li>@p.Id</li> } • @DateTime.Now.ToString() • @if(produto.Valor < 1000){<p>Este produto não possui desconto</>} • @{int numero = 1; stringe nome = “Alex”} <p>meu nome é @nome</p>
  • 13. Helpers • @Html.TextBoxFor(m => m.ProductID) • Html.ActionLink(“Edit", “Edit", new{id=item.ID)}
  • 14. Layout(MasterPage) • @RenderBody() • Desclaração Explicita de um layout @{LayoutPage = “MeuLayout.cshtml” • @RenderSection(“menu”, option:true) • @Body() • @section menu{}
  • 15. Model
  • 16. Model
  • 17. Strongly Typed Models • Prover uma forma tipada de passar dandos entre a controller e a view
  • 18. Http Metodos • HttpGet e HttpPost • Tudo que for modificar dados por boa prática utiliza-se HttpPost • HttpGet deve ser utilizado quando nenhum informação for modificar server side.
  • 22. Bundle • Recurso que permite injetar conteúdo como css, javascript de forma simples e re-ultilizavel
  • 23. Exemplo : Controller > Detalhes