Conhecendo os recursos do ASP.NET Web API

Post on 24-May-2015

541 views 0 download

Transcript of Conhecendo os recursos do ASP.NET Web API

CONHECENDO OS RECURSOS DO ASP.NET WEB

APIIvan PaulovichMVP ASP.NET / IIS

Marcus CoelhoMCT

Ivan Paulovich

www.raptors.com.br

@ivanpaulovich ivan@100looop.com

100loop.com

Marcus Coelho

Conhecendo o ASP.NET Web API

• Serviços HTTP• Acessível por um conjunto de clientes• Ideal para aplicações RESTful• Separação de responsabilidades

DEMO VAPT-VUPT

Criando uma WebAPI com suporte a CRUD

• Web API Template• jQuery

Roteamento

Action Http Method Url

Get a list of all contacts GET /api/contacts

Get a contacts by ID GET /api/contacts/id

Create a new contact POST /api/contacts

Update a contact PUT /api/contacts/id

Delete a contact DELETE /api/contacts/id

Consultas e Paginação

Parâmetro Descrição Exemplo

$filter Seleciona os elementos que atendem a restrição

http://localhost:9000/api/contacts?$filter=substringof(Name, 'Ed') eq true

$orderby Ordena os resultados por uma propriedade específica

http://localhost:9000/api/contacts?$orderby=Name

$skip Pula os primeiros n elementos. http://localhost:9000/api/contacts?$skip=2

$top Retorna os primeiros n elementos na lista. Se combinado com $orderby, a lista é ordenada primeiro, e os primeiros n elementos da lista ordenada são retornados.

http://localhost:9000/api/contacts? $top=3&$orderby=Name

Read e Create

Update e Delete

Tratamento de exceções

• HttpResponseException• Exception Filters• ExceptionFilterAttribute

DEMO

Self-Host a Web API

• HTTP URL Namespace Reservationnetsh http add urlacl url=http://+:8080/ user=SG1\Ivan

• Simples• Independente– Console Application

Model

ApiController

Servidor

DEMO

Outras funcionalidades

• Autorização• Validação customizada

Links Úteis

• http://www.asp.net/web-api

• http://www.asp.net/vnext/overview/downloads

Palestras Relacionadas

• 15/Maio 21h - CSharp-B03Entity Framework 5 - A ferramenta de ORM que todo desenvolvedor deve conhecer

• 16/Maio 19h - Web-A01Criando aplicações Web com ASP.NET MVC 4

PERGUNTAS?