.NET

12 set, 2016

ASP .NET MVC 5 – Criando uma aplicação com AngularJS e Web API – Parte 01

Publicidade

Neste artigo, eu vou mostrar como criar uma aplicação web usando os recursos da ASP .NET MVC 5, do AngularJS e da Web API.

Vamos criar uma loja virtual onde teremos o login do usuário, o catálogo de produtos, a manutenção dos produtos e as operações básicas de seleção e compra de produtos.

Vou começar apresentando a arquitetura da aplicação e, a seguir, apresentar os conceitos básicos sobre as tecnologias AngularJS e Web API que iremos usar em nosso projeto.

Apresentando a arquitetura do projeto web

O diagrama a seguir dá uma visão geral da arquitetura da nossa aplicação web ASP .NET MVC 5:

mvc_angapi11

No lado do servidor, vamos trabalhar com ASP .NET MVC e Web API (Restfull) e do lado do cliente, vamos trabalhar com AngularJS.

AngularJS – Conceitos

O  “AngularJS é um framework JavaScript open-source, mantido pelo Google, que auxilia na execução de Single Page Applications. Seu objetivo é aumentar aplicativos que podem ser acessados por um navegador web, sob o padrão model–view–controller (MVC), em um esforço para facilitar tanto o desenvolvimento quanto o teste dos aplicativos.

A biblioteca lê o HTML que contém tags especiais e, então, executa a diretiva a qual esta tag pertence. Também faz a ligação entre a apresentação e seu modelo, representado por variáveis JavaScript comuns. O valor dessas variáveis podem ser definidas manualmente, ou via um recurso JSON estático ou dinâmico.

O AngularJS é construído sob a ideologia de que programação declarativa deve ser usada para construção de Interfaces de Usuário e componentes de software, enquanto que a programação imperativa é excelente para escrever as regras de negócio.

O framework adapta e estende o HTML tradicional para uma melhor experiência com conteúdo dinâmico, com a ligação direta e bidirecional dos dados (two-way data-binding) que permite sincronização automática de models e views. Como resultado, AngularJS abstrai a manipulação do DOM e melhora os testes.

Um dos recursos mais importantes do AngularJS é o DataBindig que reflete a sincronização de dados entre a view e o model. Se a view mudar, o model também muda e vice-versa. Este processo é assegurado pela utilização do objeto $scope, conforme vemos no diagrama a seguir:

mvc_angapi12

O AngularJS pode ser obtido do site https://angularjs.org/. No site, você também vai encontrar recursos de aprendizagem, cursos, a referência para a API e outros recursos.

Para usar o AngularJS, podemos fazer a referência local em nosso projeto via Nuget ou usar a distribuição CDN.

Web API – Conceitos

O protocolo HTTP não precisa ser usado apenas para servir páginas. É também uma plataforma poderosa para a construção de APIs que expõem serviços e dados. O HTTP é simples, flexível e onipresente. Praticamente qualquer plataforma que você pode pensar tem uma biblioteca HTTP, então, os serviços HTTP podem atingir uma ampla gama de clientes, incluindo navegadores, dispositivos móveis e aplicações desktop tradicionais.

Uma Web API pode ser vista como um conjunto de serviços expostos via web com o objetivo de integrar sua aplicação a diversos tipos de clientes que queiram usar os serviços. Esses serviços são usados como requisições HTTP e retornam uma resposta em um formato específico como XML, REST etc.

Essa resposta pode ser uma informação de um repositório de dados, o retorno de uma operação etc. O cliente pode ser uma página web, uma aplicação desktop, uma aplicação mobile etc. Como exemplos de Web API, podemos citar as Web APIs do Facebook e Twitter.

A ASP.NET Web API é um framework para a construção de web APIs em cima do .NET Framework, permitindo que sua aplicação seja acessada por diversos clientes em diversas plataformas.

Recursos usados: Visual Studio Community 2015.

Nota: baixe e use a versão Community 2015 do VS. Ela é grátis e é equivalente a versão Professional.

Criando o projeto no VS Community

Abra o VS Community 2015 e clique em New Project. Selecione a linguagem Visual C# e o template ASP .NET Web Application.

Informe o nome Mvc_LojaVirtual ou outro de sua preferência e clique no botão OK:

mvc_angapi13

A  seguir, selecione o template MVC e marque a opção Web API e clique no botão OK:

mvc_angapi14

Para obter a AngularJS, podemos usar o Nuget para incluir as referências às biblioteca AngularJS.

Isso é feito no menu TOOLS e em Nuget Package Manager e selecione Manage Nuget Package for Solutions.

Na janela do assistente, selecione a guia Online e informe AngularJS para localizar o pacote. Depois selecione o pacote Angularjs e clique no botão Install para instalar a biblioteca no projeto:

mvc_angapi15

Podemos também usar usar a distribuição CDN, que é referenciada diretamente na página ASP .NET.

A URL da distribuição CDN pode ser obtida no site https://angularjs.org/ e é esta aqui.

Dessa forma, temos a estrutura do nosso projeto criada e pronta para que possamos incluir os recursos que precisamos para nossa loja virtual.

mvc_angapi16

Napróxima parte do artigo, vamos definir o nosso modelo de dados e criar o banco de dados, as tabelas e as stored procedures que vamos usar.