ASP.NET WEB API
 Waldyr Felix
 Arquiteto de software 2PC
 waldyrfelix.net
 @WaldyrFelix
   Entrega de conteúdo para múltiplos dispositivos
   Forte interoperabilidade
   Fácil de escalabilidade
   Compatibilidade com tudo que acesse a web
   Abraça o HTTP




PORQUE WEBAPI
REST
REST Web Service

 URI
                    Recurso a ser acessado



        Formato 1    Formato 2     Formato 3   Formato 4




 Métodos


            GET         POST           PUT       DELETE
ENTREGA EM VÁRIOS DISPOSITIVOS
USO DO WEBAPI
 Modelo   simplificado
 Parecido com desenvolvimento de
 controllers
 Utilização   de rotas
 Vários
      formatos de representação dos
 dados nativos do framework



ASP.NET WEBAPI
 Criando   o primeiro projeto ASP.NET WebAPI
 Funcionamento    das rotas
 Funcionamento    do ApiController
 Criando   um serviço de produtos




DEMO
 OData    é um padrão de consulta de dados na web
 Dá   maior flexibilidade na busca dos dados
É   nativo no ASP.NET WebAPI


     [Queryable]
     public IQueryable<Produto> GetProdutos()
     {
          return db.Produtos.AsQueryable();
     }




WEB API & ODATA
                                  +
Suportando   OData
Realizando   consultas




OUTRA DEMO
 Compatibilidade    com qualquer dispositivo móvel
 Pode ser facilmente consumido por qualquer
 linguagem de programação
 Use   JSON preferencialmente
 Suporta   vários tipos de autenticação
using (var client = new HttpClient())
 {
     var strings = await client.GetAsync("/api/values");
     var strResult = await strings.Content.ReadAsStringAsync();

     var serializer = new JavaScriptSerializer();
     var result = serializer.Deserialize<string[]>(strResult);

     foreach (var s in result)
     {
         Console.WriteLine(s);
     }
 }




EXEMPLO EM C#
$.ajax({
   url: "http://localhost:36210/api/values",
   type: "GET",
   dataType: "json",
   success: function(data) {
     $(data).each(function(index, value){
         console.log(index + ') '+ value);
     });
   }
 });



EXEMPLO EM JAVASCRIPT/JQUERY
DÚVIDAS?
Waldyr Felix
Arquiteto de software 2PC
waldyrfelix@2pc.com.br

ASP.NET Web API

  • 1.
    ASP.NET WEB API Waldyr Felix Arquiteto de software 2PC waldyrfelix.net @WaldyrFelix
  • 2.
    Entrega de conteúdo para múltiplos dispositivos  Forte interoperabilidade  Fácil de escalabilidade  Compatibilidade com tudo que acesse a web  Abraça o HTTP PORQUE WEBAPI
  • 3.
    REST REST Web Service URI Recurso a ser acessado Formato 1 Formato 2 Formato 3 Formato 4 Métodos GET POST PUT DELETE
  • 4.
    ENTREGA EM VÁRIOSDISPOSITIVOS
  • 5.
  • 6.
     Modelo simplificado  Parecido com desenvolvimento de controllers  Utilização de rotas  Vários formatos de representação dos dados nativos do framework ASP.NET WEBAPI
  • 7.
     Criando o primeiro projeto ASP.NET WebAPI  Funcionamento das rotas  Funcionamento do ApiController  Criando um serviço de produtos DEMO
  • 8.
     OData é um padrão de consulta de dados na web  Dá maior flexibilidade na busca dos dados É nativo no ASP.NET WebAPI [Queryable] public IQueryable<Produto> GetProdutos() { return db.Produtos.AsQueryable(); } WEB API & ODATA +
  • 9.
    Suportando OData Realizando consultas OUTRA DEMO
  • 10.
     Compatibilidade com qualquer dispositivo móvel  Pode ser facilmente consumido por qualquer linguagem de programação  Use JSON preferencialmente  Suporta vários tipos de autenticação
  • 11.
    using (var client= new HttpClient()) { var strings = await client.GetAsync("/api/values"); var strResult = await strings.Content.ReadAsStringAsync(); var serializer = new JavaScriptSerializer(); var result = serializer.Deserialize<string[]>(strResult); foreach (var s in result) { Console.WriteLine(s); } } EXEMPLO EM C#
  • 12.
    $.ajax({ url: "http://localhost:36210/api/values", type: "GET", dataType: "json", success: function(data) { $(data).each(function(index, value){ console.log(index + ') '+ value); }); } }); EXEMPLO EM JAVASCRIPT/JQUERY
  • 13.
  • 14.
    Waldyr Felix Arquiteto desoftware 2PC waldyrfelix@2pc.com.br