Exemplo 01 Usando ASP.NET MVC 4



Documentos relacionados
Criação de uma aplicação Web ASP.NET MVC 4

PROJETOS EXEMPLO DE ASP.NET MVC

Laboratório 3 Controllers

Construindo uma ASP.Net MVC 4 Web Application usando Bootstrap no front-end

Aplicação MVC com Class Library

DESENVOLVIMENTO DE SOFTWARE PARA INTERNET LABORATÓRIO 4 PROF. EMILIO PARMEGIANI

Login. Criar uma pasta Repositories na raiz do projeto. Criar uma classe Funcoes.cs dentro da pasta Repositories.

Login Google. Copie a SSL URL, que no meu caso é

Bem vindos ao Curso de ASP.NET MVC 3 Razor e C#

Unidade: Ferramentas de configuração Tópico: Tabelas e campos definidos pelo usuário

Criação de uma aplicação Web ASP.NET MVC usando Code First

Many-to-many. Mapear no Context Na classe Context.cs, dentro do método OnModelCreating, adicionar o trecho

Construindo Aplicações com ASP.NET MVC 2.0 Aula 02 Luiz Alberto Ferreira Gomes. Ciência da Computação da PUC Minas

Login. Criar um novo website File > New > WebSite Framework 4.5 Visual C# ASP.NET Empty Web Site Nome do projeto: WebLogin

Consulta de endereço através do Cep

Aula07 Forms Authentication

Google Chart. Adicionando Action No PublicoController, adicionar o trecho. Adicionar View Botão direito na Action acima, Add View.

Construindo Aplicações com ASP.NET MVC 2.0 Aula 03 Luiz Alberto Ferreira Gomes. Ciência da Computação da PUC Minas

LAB 18: ASP.NET e Web Services

Publicar uma aplicação ASP.NET Core com base de dados SqlServer no Azure usando Visual Studio e um perfil para publicação (publish profile)

Aplicações Web MVC. IFRN Instituto Federal de Educação, Ciências e Tecnologias do Rio Grande do Norte.

Aplicação ASP.NET MVC Cliente de Aplicação Web API

Continuação... Criando a Interface e adiante

Database and Applications. Criação, inserção de dados PHP+MySQL

VALIDAÇÃO DE DADOS COM O PADRÃO MVC

Atividade JSP com Banco de Dados

REST. Representational State Transfer. É um estilo arquitetural usado por muitas aplicações Web para estender as suas funcionalidades.

MANUAL DO SISTEMA TRT-5 PRESTADOR MÉDICO

Inclusão de Novo Processo Administrativo

05 Como utilizar POO no ambiente gráfico do C#?

UTILIZAÇÃO DE ARQUITETURA EM CAMADAS BASEADA NO MODEL VIEW CONTROLLER, EM APLICAÇÕES WEB

Selecione o WPF Application dentro de Templates > Visual C# > Windows

Programação WEB. Prof. André Gustavo Duarte de Almeida www3.ifrn.edu.br/~andrealmeida. Aula II jquery UI

Configurando uma aplicação Struts

Manual Básico. Para utilização do Gerenciador de Imóveis

Sobre o Visual C

Visual Studio+SQL Server Express LocalDB ANTONIO LUIS

Construindo Aplicações com ASP.NET MVC 2.0 Aula 01 Luiz Alberto Ferreira Gomes. Ciência da Computação da PUC Minas

Login Facebook. Continuação do passo-a-passo Login Google

Version Notes (Notas da versão) Versão

ASP.NET Web Services. José Antônio da Cunha IFRN

Laboratório opcional: Backup de dados e restauração no Windows 7

Aplicação Web Zend Framework 2 Cliente de Aplicação Asp.Net Web API

Diário Oficial Digital. Sistema web para pesquisa de mátérias Manual do usuário

INSTALAÇÃO DE CERTIFICADO SERVIDOR WEB MICROSOFT IIS 5.x

COLÉGIO NETWORK TÉCNICO EM INFORMÁTICA Técnicas de Suporte ao Usuário Material II Modelo 02 Cadastro de Clientes

Como tratar eventos - A interface ActionListener e o método actionperformed

POO Programação Orientada a Objetos

curso de ASP.NET MVC

Fundamentos de Informática. Tiago Alves de Oliveira

Introdução ao ASP.NET

PHP ORIENTADO A OBJETOS. 2º Encontro PHP MG 16 e 17 de Outubro / Charles Schaefer

Manual Notícias. Note que abriu uma nova tela que permite procurar a imagem desejada em seu computador.

O Segredo De Como colocar links externos no Youtube e Aumentar sua taxa de conversão em 1000%

DISTRIBUINDO SUA APLICAÇÃO

Criando um Site. Por: João Paulo Almeida

Todos os direitos reservados e protegidos pela Lei nº9.610, de 10/02/1998.

PLATAFORMA SIGA RIO DAS VELHAS MANUAL DO CÓDIGO FONTE

testo Saveris Web Access Software Manual de instruções

AJAX no GASweb. Mas e afinal, para que usamos o AJAX?

Conhecendo e editando o seu perfil

Manual do Usuário. Quiz Online

INTRODUÇÃO AO USO DO DEV C++ Disciplina: Introdução à Ciência da Computação Prof. Modesto Antonio Chaves Universidade estadual do Sudoeste da Bahia

TUTORIAL - COMO SUBMETER ARTIGOS

Como criar uma palavra cruzada no Hot Potatoes

Podemos também definir o conteúdo dos menus da página inicial. Clique em Menus, Main Menu.

Manual de instalação do Microsoft SQL Server 2008 R2 Express no Windows 10

WebAPI. Comente o bloco system.data e entityframework (caso existam) no web.config

PEME Web. Versão 1.0

Escrito por Bruno Crivelari Sanches Qui, 01 de Outubro de :16 - Última atualização Ter, 13 de Setembro de :45

Resumo Aplicação MVC Contoso University

Aplicativo da Cultura

Manual do Administrador. Joomla! Sumário Acessando o Joomla!...1

Análise e Projeto Orientados a Objetos

Manual de baixa do Certificado Digital AR PRÁTICA

Aplicação ASP.NET MVC Cliente de Aplicação Web API (com Class Library)

LAB12: Componentes ASP.NET

Conhecendo o Delphi 2010

Sistema de Cadastro de Pessoa Jurídica

PROVA DE NOÇÕES DE INFORMÁTICA

Associação 1:1. Baseado no Diagrama de Classe a seguir, iremos criar as classes de Modelagem que compõem a Associação de Piloto com Carro.

MANUAL DE UTILIZAÇÃO MARCAÇÃO DE CONSULTAS MÉDICAS FUNASG

Com uma melhoria no visual o sistema conta com novidades e alguns aprimoramentos nos recursos já existentes.

NOTA: Neste tutorial foi utilizado o Visual Studio 2010 para criar o Projeto Web no qual iremos realizar os passos abaixo.

Credenciamento. e manual de instalação Magento. Credenciamento. Configurações

Manual de Vendas Off line Mobile

FUNDAMENTOS DE WINDOWS INFORMÁTICA / IFRN/PRONATEC 1. O Windows

Tutorial de Aplicação Simples usando Web Forms e MySQL. Luiz Eduardo Guarino de Vasconcelos

SQL Server Management Studio - Backup e Restauração de dados

PROCEDIMENTO DO CLIENTE

ESCOLA DE EDUCAÇÃO PROFISSIONAL SENAC PELOTAS CENTRO HISTORICO. gpedit.smc TÉCNICO EM INFORMATICA PRONATEC. Professor Nataniel

PRINCIPAL PAGINA INICIAL

Sistema Salas - (MRBS¹)

O Portal de Assinaturas Certisign é um serviço que permite a pessoas e empresas assinarem documentos eletrônicos com validade jurídica, de forma

MSP430 Lab 02 Criar e Compilar um projeto

SGCD 2.0 Sistema Gerenciador de Conteúdo Dinâmico

Transferindo licenças

Autenticação e Autorização numa Aplicação Web API através de uma aplicação Cliente ASP.NET MVC

Transcrição:

Exemplo 01 Usando ASP.NET MVC 4 MVC Revisão Model View Controller: MVC é uma arquitetura de software, que separa a lógica da interface do usuário. Isto é conseguido através da separação da aplicação em três partes Model, View e Controller. O foco da MVC é a separação de responsabilidades. A MVC também é um padrão de projeto. 1. O Model: Representa o comportamento lógico dos dados na aplicação. Ele representa a lógica de negócios da aplicação. O Model notifica a View e o Controller sempre que ocorre uma mudança de estado; 2. A View: Fornece a interface de usuário da aplicação. A view é aquele que transforma o estado do Model em HTML legível; 3. O Controller: Aceita entradas do usuário e instrui a View e o Model para realizar a Action correspondente; Abaixo, temos a figura, onde representamos o comportamento do padrão MVC. Criando o seu primeiro projeto ASP.NET MVC 4 1. Abra o Visual Studio Express 2012 for Web e no menu File clique em New Project; 2. Selecione o template Visual C# -> Web -> ASP.NET MVC 4 Web Application; 3. Informe o nome PrimeiraAPP_MVC4 e clique no botão OK; 4. Na próxima janela selecione o template Internet Application, o view Engine Razor e clique no botão OK; Será criado o projeto completo com a estrutura das pastas padrão de um projeto ASP.NET MVC. Podemos observar no projeto asa seguintes pastas: Controllers - contém - Local onde iremos colocar as classes de controle; Models - Local onde iremos colocar as classes para definição e/ou persistência de dados; Views - Local onde teremos as páginas para apresentação ao cliente;

Executando o projeto iremos obter o seguinte resultado onde podemos ver as seções Home, About e Contact bem como as opções para Log in e Register adicionadas e criadas por padrão: Alterando o projeto e exibindo detalhes de usuários Vamos incluir no projeto o nosso Controller, Model e View para podermos exibir os detalhes dos usuários. Clique com o botão direito em Models, clique em Add Class e adicione uma classe chamada UsuarioModel.cs com a seguinte estrutura: using System; namespace PrimeiraAPP_MVC4.Models public class UsuarioModel public string nome get; set; public string sobrenome get; set; public string endereco get; set; public string email get; set; public DateTime nascimento get; set; Vamos agora implementar algumas validações nos campos definidos na classe UsuarioModel usando Data Annotations. Para isso vamos alterar o código conforme exibido a seguir: using System; using System.ComponentModel; using System.ComponentModel.DataAnnotations; namespace PrimeiraAPP_MVC4.Models public class UsuarioModel [DisplayName("Primeiro Nome")] [StringLength(50, ErrorMessage = "O campo Nome permite no máximo 50 caracteres!")] public string nome get; set; [Required] public string sobrenome get; set; public string endereco get; set; [StringLength (50)] [Required(ErrorMessage="Informe o Email")] [RegularExpression(@"\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*", ErrorMessage = "Email inválido.")] public string email get; set; [DataType(DataType.Date)] public DateTime nascimento get; set; No exemplo usamos os seguintes atributos: Required : Torna o valor do campo obrigatório. StringLength: Para definir o comprimento máximo do campo. DataType: Para definir o tipo suportado pelo campo.

Vamos agora criar uma nova classe na pasta Models onde iremos definir alguns dados para os nossos usuários. Clique com o botão direito do Models, clique em Add Class e adicione uma classe chamada Usuario.cs com a seguinte estrutura: using System; using System.Collections.Generic; using System.Linq; using System.Web; namespace PrimeiraAPP_MVC4.Models public class Usuarios public List<UsuarioModel> listausuarios = new List<UsuarioModel>(); public Usuarios() listausuarios.add(new UsuarioModel nome = "Jose Carlos", sobrenome = "Macoratti", endereco = "Rua Projetada, 100", email = "macoratti@yahoo.com", nascimento = Convert.ToDateTime("05/09/1975") ); listausuarios.add(new UsuarioModel nome = "Jefferson Andre", sobrenome = "Ribeiro", endereco = "Rua Mirassol, 50", email = "jeffbol@bol.com.br", nascimento = Convert.ToDateTime("13/08/1992") ); listausuarios.add(new UsuarioModel nome = "Janice Lima", sobrenome = "Morais", endereco = "Rua Peru, 10", email = "janielima@hotmail.com", nascimento = Convert.ToDateTime("15/07/1990") ); public void CriaUsuario(UsuarioModel usuariomodelo) listausuarios.add(usuariomodelo); public void AtualizaUsuario(UsuarioModel usuariomodelo) foreach (UsuarioModel usuario in listausuarios) if (usuario.email == usuariomodelo.email) listausuarios.remove(usuario); listausuarios.add(usuariomodelo); break; public UsuarioModel GetUsuario(string Email)

UsuarioModel _usuariomodel = null; foreach (UsuarioModel _usuario in listausuarios) if (_usuario.email == Email) _usuariomodel = _usuario; return _usuariomodel; public void DeletarUsuario(String Email) foreach (UsuarioModel _usuario in listausuarios) if (_usuario.email == Email) listausuarios.remove(_usuario); break; Nesta classe definimos um construtor (Usuario) que cria 3 usuários e 3 métodos: CriaUsuario - Cria uma lista de usuários; AtualizaUsuario - Atualiza um usuário; Getusuario - Obtém um usuário; DeletarUsuario - Exclui um usuário; Vamos agora criar um Controller para a nossa aplicação. Clique com o botão direito do mouse sobre a pasta Controllers e selecione Add-> Controller; A seguir informe o nome UsuarioController e escolha o Template -EMpty MVC controller e clique no botão Add; Vamos definir o código abaixo em nosso controller:

using System.Web.Mvc; using PrimeiraAPP_MVC4.Models; namespace PrimeiraAPP_MVC4.Controllers public class UsuarioController : Controller // // GET: /Usuario/ private static Usuarios _usuarios = new Usuarios(); public ActionResult Index() return View( _usuarios.listausuarios); public ActionResult AdicionaUsuario() return View(); [HttpPost] public ActionResult AdicionaUsuario(UsuarioModel _usuariomodel) _usuarios.criausuario(_usuariomodel); return View(); public ViewResult DeletaUsuario(string id) return View(_usuarios.GetUsuario(id)); [HttpPost] public RedirectToRouteResult DeletaUsuario(string id, FormCollection collection) _usuarios.deletarusuario(id); return RedirectToAction("Index"); Nosso controlador possui três métodos HttpGet: Index AdicionaUsuario DeletaUsuario Além disso temos dois métodos HttPost: AdicionaUsuario - que usaremos para postar as entradas para uso posterior; DeletaUsuario - que trata a exclusão do usuário; Vamos criar as nossas views a partir dos métodos do controlador. Clique com o botão direito sobre o método Index() e selecione Add View; A seguir informe selecione a opção Create a strongly-typed view conforme a figura abaixo e clique no botão Add;

Será criada a view Index.chstml na pasta Views/Usuarios com o código abaixo: @model IEnumerable<PrimeiraAPP_MVC4.Models.UsuarioModel> @ ViewBag.Title = "Index"; <h2>index</h2> <p> @Html.ActionLink("Criar Usuário", "AdicionaUsuario") </p> <table> <tr> <th>@html.displaynamefor(model => model.nome)</th> <th>@html.displaynamefor(model => model.sobrenome)</th> <th>@html.displaynamefor(model => model.endereco)</th> <th>@html.displaynamefor(model => model.email)</th> <th>@html.displaynamefor(model => model.nascimento)</th> <th></th> </tr> @foreach (var item in Model) <tr> <td>@html.displayfor(modelitem => item.nome)</td> <td>@html.displayfor(modelitem => item.sobrenome)</td> <td>@html.displayfor(modelitem => item.endereco)</td> <td>@html.displayfor(modelitem => item.email)</td> <td>@html.displayfor(modelitem => item.nascimento)</td> <td> @Html.ActionLink("Edit", "Edit", new /* id=item.primarykey */ )

@Html.ActionLink("Details", "Details", new /* id=item.primarykey */ ) @Html.ActionLink("Deletar", "DeletaUsuario", new id=item.email ) </td> </tr> </table> Vamos alterar o codigo do ActionLink do link Criar Usuário para@html.actionlink("criar Usuário", "AdicionaUsuario") de forma a podermos chamar a view AdicionaUsuario que iremos criar a seguir. Vamos repetir o processo e criar uma view para o método AdicionaUsuario() do controlador UsuarioController (clique com o botão direito do mouse sobre o método AdicionaUsuario e selecione Add-> View); A seguir informe selecione a opção Create a strongly-typed view conforme a figura abaixo e clique no botão Add; Será criada a view AdicionaUsuario.chstml na pasta Views/Usuarios com o código abaixo: @model PrimeiraAPP_MVC4.Models.UsuarioModel @ ViewBag.Title = "AdicionaUsuario"; <h2>adicionausuario</h2>

@using (Html.BeginForm()) @Html.ValidationSummary(true) <fieldset> <legend>usuariomodel</legend> <div class="editor-label">@html.labelfor(model => model.nome) <div class="editor-field">@html.editorfor(model => model.nome) @Html.ValidationMessageFor(model => model.nome) <div class="editor-label">@html.labelfor(model => model.sobrenome) <div class="editor-field"> @Html.EditorFor(model => model.sobrenome) @Html.ValidationMessageFor(model => model.sobrenome) <div class="editor-label">@html.labelfor(model => model.endereco) <div class="editor-field"> @Html.EditorFor(model => model.endereco) @Html.ValidationMessageFor(model => model.endereco) <div class="editor-label">@html.labelfor(model => model.email) <div class="editor-field"> @Html.EditorFor(model => model.email) @Html.ValidationMessageFor(model => model.email) <div class="editor-label">@html.labelfor(model => model.nascimento) <div class="editor-field"> @Html.EditorFor(model => model.nascimento) @Html.ValidationMessageFor(model => model.nascimento) <p> <input type="submit" value="create" /> </p> </fieldset> <div> @Html.ActionLink("Back to List", "Index") @section Scripts @Scripts.Render("~/bundles/jqueryval") Antes de executar o projeto vamos alterar o arquivo _Layout.chstml da pasta /Shared incluindo a linha destacada em azul abaixo no arquivo: <nav> <ul id="menu"> <li>@html.actionlink("home", "Index", "Home")</li> <li>@html.actionlink("about", "About", "Home")</li> <li>@html.actionlink("contact", "Contact", "Home")</li> <li>@html.actionlink("usuario", "Index", "Usuario")</li> </ul> </nav> Executando o projeto iremos obter o seguinte resultado:

Observe que no menu temos agora a opção Usuario que nos dará acesso a view Index.cshtml da pasta \Views\Usuario; Clicando nesta opção teremos a apresentação da view Index.cshtml onde vemos o link Criar Usuário que irá acionar a view AdicionaUsuario.cshtml; Ao clicar no link Criar Usuário teremos a página para cadastrar um novo usuário; Vamos verificar primeiro se a nossa validação está funcionando. Na figura abaixo vemos o resultado obtido se violarmos qualquer uma das regras de validação definidas:

Cadastramento um usuário com todos os dados válidos conforme abaixo: Ao clicarmos no link - Back to List - vermos o novo usuário sendo exibido na página conforme a seguir:

Criamos assim nossa primeira aplicação usando ASP.NET MVC 4 e vimos que o nosso trabalho é muito facilitado pelos recursos oferecidos no framework. Se desejar você pode implementar as funcionalidades para Editar, Detalhar e Deletar usuários. Basta definir o método Model, no Controlador e a seguir criar a respectiva View.