Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Overview of ASP.NET Web API Framework

Alexander Beletsky
September 29, 2012
420

Overview of ASP.NET Web API Framework

Alexander Beletsky

September 29, 2012
Tweet

Transcript

  1. @alexbeletsky http://beletsky.net What's new in ASP.NET 4.5? One ASP.NET Framework

    ASP.NET MVC 4 Release ASP.NET WebForms Improvements ASP.NET Web Pages 2 (Web Matrix) SignalR ASP.NET Web API (ex. WCF Web API) Open Source
  2. @alexbeletsky http://beletsky.net What's new in ASP.NET 4.5? One ASP.NET Framework

    ASP.NET MVC 4 Release ASP.NET WebForms Improvements ASP.NET Web Pages 2 (Web Matrix) SignalR ASP.NET Web API (ex. WCF Web API) Open Source
  3. @alexbeletsky http://beletsky.net Early days of API oriented apps /GetOrders /GetOrders

    /UpdateOrder /GetAllDueOrders /DeleteOrder.asmx?id=1 /UpdateOrder.asms?id=1&title=”New”...
  4. @alexbeletsky http://beletsky.net RPC Remote Procedure Call The architecture style, where

    client sends a request to remote server and execute specified procedure with optional parameters.
  5. @alexbeletsky http://beletsky.net RESTful based API GET /orders GET /orders/1 POST

    /orders PUT /orders/1?title=”New” DELETE /orders/1
  6. @alexbeletsky http://beletsky.net REST Representational State Transfer The architecture style, where

    communication between client and server relys on HTTP standard and uses lightweight mechanisms for transporting data
  7. @alexbeletsky http://beletsky.net What is ASP.NET Web API? Framework for build

    REST style API services, providing best practices and features of REST services inside the box.
  8. @alexbeletsky http://beletsky.net ASP.NET MVC vs. ASP.NET WEB API ASP.NET MVC

    is positioned as page-oriented development framework. ASP.NET Web API is positioned as api-oriented development framework.
  9. @alexbeletsky http://beletsky.net ASP.NET Web API main features - Code Scaffolding

    - Content Negotiation - MediaTypeFormatters - Hypermedia - IQueryable & Odata support - Self-Documenting API - Hosting Options
  10. @alexbeletsky http://beletsky.net Code Scaffolding - Scaffolds for Code-First Entity Framework

    - Easy to use - Great for quick start and prototyping - CRUD from the box
  11. @alexbeletsky http://beletsky.net Content Negotiation - Find best match between client-server

    - Uses HTTP header information - “Invisible” for developer - JSON, XML from the box
  12. @alexbeletsky http://beletsky.net Media Type Formatters - For support any custom

    API format - Based on async operations - BufferedMediaTypeFormatter wraps the asynchronous read/write methods inside sychronous methods.
  13. @alexbeletsky http://beletsky.net IQueryable & OData support - Paging and sorting

    from the box - OData functions: $top, $order, $skip, $filter
  14. @alexbeletsky http://beletsky.net Self Documenting API - IApiExplorer interface for getting

    info - ApiDescription encapsulates information about particual API class - Used to generate documentation pages
  15. @alexbeletsky http://beletsky.net Hosting Options - ASP.NET hosting by default -

    Self Hosting (HTTP server in .exe) - OWIN, Kayak - Azure Roles