Universidade Federal de Sergipe Departamento de Sistemas de Informação Bruno Cruz Jessica Rodrigo Aragão – ASP.NET MVC 3.

Slides:



Advertisements
Apresentações semelhantes

Advertisements

JBanana.
Área de Desenvolvimento de Sistemas
Desenvolvimento Web.
Framework para desenvolvimento web
Curso: Banco de Dados I Análise de Sistemas PUC Campinas
Consumindo e Criando Web Services SOAP em .Net
Conhecendo o VS2008: Windows Forms X Web Forms X Web Services
SELENIUM.
Wagner Santos C. de Jesus
MedEl: Uma solução de E-Learning utilizando tecnologia Microsoft ASP
WebWork e JSP Keven andrade
Arquitetura Usual Definição: Arquitetura que faz uso de apenas duas camadas que, formalizadas, podem ser citadas: View (Visualização): camada que contém.
Sistema de Gestão de Manutenção
Prof. Marco Aurelio N. Esteves
Model-View-Controller (MVC) em Aplicações Web Eduardo Martins Guerra Desenvolvimento de Soluções WEB.
Outubro/2008 Engenharia do Computação Sistema de Gestão de Manutenção Desenvolvimento Equipe Antônio Deyvyson Diego Nascimento Paollo Maciel Marcelo Pereira.
Tecnologias para Internet
Rodrigo Cristiano Silva
Desenvolvimento de Projetos e Aplicações Web
Programação Web com PHP
Aplicativos Web Com Orientação a Objetos
Rodrigo Cristiano Silva
Jquery Ajax.
Estratégias Cliente-Servidor para SIGWeb
Programação para estrutura Cliente-Servidor
Tópicos de Sistemas de Informação A
Rodrigo Cristiano Silva
Integração com Banco de Dados
Introdução ao Framework Django
A autoria - II.
Conceitos de J2EE para a WEB
ASP (Active Server Pages)
Adriano Melo Introdução ao ASP.NET Adriano Melo
Prof. Alexandre Monteiro Recife
Professor: Márcio Amador
Aplicativos Web Com Orientação a Objetos
Arquitetura de Desenvolvimento Web MVC vs. Three Tiers
Arquitetura das JSP - Aula 2
Implementação MVC Pedro Antonino.
Aplicações Web com Orientação a Objetos
Aula 1 - Fundamentos Web Servidor
IIS Web Server.
Padrão- MVC Model, View, Controller
LINGUAGENS DE PROGRAMAÇÃO WEB
Padrões de Interação com o Usuário
Unidade 1 – Introdução a J2EE Prof.: Henrique Santos
Introdução ao ASP.Net 1º Semestre 2010 > PUCPR > BSI Bruno C. de Paula.
Tópicos Especiais J2EE Prof. Cristina Valadares Curso de Ciência da Computação.
Padrões de Interação com o Usuário
Projeto Supervisionado no Desenvolvimento de Aplicações Profissionais na Web Introdução a Aplicações Web.
JavaServer Faces Rapid Web Application Development em Java Ricardo Cavalcanti Jobson Ronan
Programação para Internet
Projeto Supervisionado no Desenvolvimento de Aplicações Profissionais na Web Servidores.
Aula 1 - Fundamentos Web Servidor Instituto Metodista Izabela Hendrix Curso de Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Gilmar Medeiros.
Student Tech Clubs Desenvolvimento WEB Antonio Ladeia Graduando em Tecnologia em Análise e Desenvolvimento de Sistemas Instituto Federal da Bahia Introdução.
Academia de Ensino Superior Prof. André Morais Desenvolvimento de Aplicações Web na plataforma Microsoft Desenhando a página.
Aplicativos para Internet Prof. Wolley W. Silva
UCSal – Tecnologia em Análise e Desenvolvimento de Sistemas Programação para Aplicações WEB Profa. Semíramis Assis
Projeto Supervisionado no Desenvolvimento de Aplicações Profissionais na Web Introdução ao Projeto.
Desenvolvimento WEB II Aula 3 – Conexão com o Banco de Dados
Desenvolvimento WEB II Introdução ao AJAX Professora: Kelly de Paula Cunha.
UCSal – Tecnologia em Análise e Desenvolvimento de Sistemas Programação para Aplicações WEB Profa. Semíramis Assis
ControllerAction Template Migalha Mensagens Documentos (html,xml) Mapeamento (Menu)
Desenvolvimento WEB II Ajax – Utilização de Frameworks Javascript Professora: Kelly de Paula Cunha.
1 AJAX em aplicações Rails Lívia Monnerat Castro
Redes de Computadores e Aplicações – Camada de aplicação IGOR ALVES.
ALUNO: RONI FABIO BANASZEWSKI Model-View-Controller.
Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) Especialista : Sistema distribuídos
Servidor WEB IGOR ALVES. O protocolo HTTP 1990 surgimento da aplicação www Grande quantidade de informação que pode ser acessada por demanda Buscadores.
Transcrição da apresentação:

Universidade Federal de Sergipe Departamento de Sistemas de Informação Bruno Cruz Jessica Rodrigo Aragão – ASP.NET MVC 3

Agenda

ASP.NET ASP.NET é uma nova geração ASP (Active Server Pages); O ASP.NET faz parte do framework.NET; É um framework de desenvolvimento para construção de páginas web e web sites com HTML, CSS, JavaScript e scripts do servidor; Páginas ASP.NET possuem a extensão.aspx;

ASP.NET Quando um navegador solicita uma página ASP.NET, o servidor processa qualquer código executável na página, antes do resultado ser enviado de volta para o navegador; ASP.NET suporta três diferentes modelos de desenvolvimento: MVC (Model View Controller); Web Forms.

ASP.NET WebForms É o modelo mais antigo de programação ASP.NET; Permite desenvolver aplicações Web de uma forma muito semelhante ao desenvolvimento de aplicações Windows Forms.

ASP.NET WebForms Quando usar WebForms: Quando você precisa rapidamente de um recurso visualmente sofisticado, como os obtidos com o controle GridView, DataList, ListView ou Repeater; Quando sentir saudade do recurso de arrastar e soltar do Visual Studio.

ASP.NET WebForms Desvantagens: Gera páginas muito grandes, afetando o carregamento das páginas e o tráfego da rede; Dificuldade em realizar testes na aplicação; Não tem real separação entre o código e o design.

ASP.NET MVC 3 O ASP.NET MVC fornece, por meio de design patterns, uma maneira poderosa e alternativa para criar websites ASP.NET dinâmicos; O ASP.NET MVC implementa o pattern MVC e separa a aplicação em três componentes: O model contém o código da camada de dados; O controller recebe as requisições do usuário; O view implementa o design da aplicação.

ASP.NET MVC 3

Como funciona? Requisição HTTP Rooting Controller Model BD View

ASP.NET MVC 3 Quando usar ASP.NET MVC 3: Quando há necessidade de unidades de teste no projeto; Quando a aplicação necessita de separação entre o design, o código e a camada de dados; Quando a aplicação necessita de separação entre o design, o código e a camada de dados.

ASP.NET MVC 3 Criando um novo projeto

ASP.NET MVC 3

Anatomia de um projeto ASP.NET MVC 3

Estrutura do projeto: App_Data: guarda arquivos de dados como banco de dados e Xml; Content: pasta onde deve colocar as imagens e estilos (CSS) utilizados no projeto; Controllers: usado para colocar todos os controllers da aplicação;

Anatomia de um projeto ASP.NET MVC 3 Estrutura do projeto: Models: pasta onde deve colocar os serviços, repositórios e outras classes que implementam a lógica da aplicação; Scripts: usado para guardar os arquivos JavaScript usados pela aplicação. Views: local onde são armazenadas as vistas que renderizam a interface exibida ao cliente.

Model Representa os dados da aplicação e as regras de negócio que governam o acesso e a modificação dos dados; Fornece ao controlador a capacidade de acessar as funcionalidades da aplicação encapsuladas pelo próprio modelo.

Entity Framework Permite aos desenvolvedores trabalhar com dados na forma de propriedades e objetos específicos do domínio; É uma ferramenta de Mapeamento Objeto Relacional.

Entity Framework Abordagens de desenvolvimento: Database First Existing Database Generated Data Model (.edmx)

Entity Framework Abordagens de Desenvolvimento Model First Generated Database Data Model (.edmx)

Entity Framework Abordagens de desenvolvimento: Code First Generated Database Data Model (classes)

Controllers Classe responsável por interpretar os dados de uma requisição e preparar o modelo para enviar a View resultante; Quem intercepta a requisição e define qual controlador será utilizado é a estrutura de roteamento; Por padrão, os controladores deve finalizar com o sufixo Controller e herdar da classe Controller.

Controllers Uma classe controller contém métodos que são as actions; Para criar uma action é preciso definir o método como public; Cada método de ação pode retornar um string ou um objeto do tipo ActionResult.

Controllers É possível controlar o funcionamento dos métodos de ações colocando atributos: [NonAction]: o método público não será invocado numa requisição HTTP. [HttpGet]: O método será invocado apenas em requisições HTTP do tipo GET. [HttpPost]: O método será invocado apenas em requisições HTTP do tipo Post.

Controllers Diferença entre Get e Post: O método Get utiliza a própria URL para enviar dados ao servidor; O método POST envia os dados colocando-os no corpo da mensagem.

ActionResult Após o controller receber a requisição e processá-la, ele devolve uma resposta para o usuário; No ASP.NET MVC temos uma classe apropriada para cada tipo de retorno que é derivada de ActionResult;

ActionResult DescriçãoExemplo ViewResultRetorna uma Viewreturn View(); RedirectResultRedireciona para uma URL específica return Redirect(“ om.br”); JsonResultRetorna um objeto no formato JSON return Json(objeto); FileResultRetorna dados binários (arquivo em disco, por exemplo) return “applicationnpdf”);

Parâmetros Os parâmetros enviados pelos usuários podem ser recuperados nos controladores: por definição de parâmetros; ou por objetos;

Parâmetros Vários Parâmetros: Uma das maneiras de recuperar os dados enviados pelos usuários é definir um parâmetro C# para cada parâmetro HTTP enviado pelo usuário.

Parâmetros

Por objetos: O ASP.NET também é capaz de montar objetos com os valores dos parâmetros HTTP enviados pelo usuário e passá-los como argumento aos controladores.

Roteamento Intercepta e redirecionar pedidos HTTP. A URL (Uniform Resource Locator) representa um recurso disponível na rede. Segue sempre a estrutura: protocolo://maquina/caminho/recurso

Roteamento No mundo ASP.NET pré-MVC existia uma relacionamento entre a URL e o recurso físico Ex: No ASP.NET MVC esse relacionamento físico não existe. A URL é mapeada para um método de ação. Ex:

Roteamento O ASP.NET MVC usa roteamento de URLs e as regras são registradas no método RegisterRoutes dentro do arquivo Global.asax.

Roteamento Todas as rotas definidas no ASP.NET MVC deve definir pelo menos dois parâmetros: controller: Identifica a classe controladora que contém o método de ação. Por convenção não é necessário colocar o sufixo Controller. action: Nome do método de ação que será acionado na classe controladora.