SlideShare a Scribd company logo
Build Modern Web Apps using 
ASP.NET Web API & AngularJS 
Taiseer Joudeh 
Senior IT Team Lead at Aramex 
Twitter : @tjoudeh 
Blog: http://bitof tech.net
Agenda 
• Deep dive into ASP.NET Web API 
• REST Specifications 
• Build RESTful HTTP service using Web API 
• Single Page Applications Overview 
• SPA Frameworks 
• Build simple SPA using AngularJS 
• Host the project on Microsoft Azure
What is ASP.NET Web API? 
• Framework for building HTTP based services 
• Use HTTP is application protocol 
• Designed for broad reach (To any client speaks HTTP!) 
• HTTP != REST 
• The framework does not enforce an architectural style 
• Can be used with: 
• ASP.NET Web Forms 
• ASP.NET MVC
ASP.NET Web API Features 
• Built on top of ASP.NET Stack 
• Native Support for ASP.NET Routing 
• Convention over Configuration 
• Native abstraction on top of raw HTTP protocol 
• Brand new HTTP client toolkit 
• High level of scalability on architecture and on the cloud 
• Easily build RESTful compliant Services
What is RESTful Services? 
• REST = Representation State Transfer 
• Stateless architect which runs over HTTP (Not a protocol) 
• Four basic design principals for RESTful services: 
1. Use HTTP Verbs only to interact with resources 
2. Interaction with resources is stateless, request/response contain all 
information 
3. Resources identified by URIs only (Services Discovery) 
4. Content Negotiation (Support for XML/JSON)
Resources in RESTful Services 
Operation HTTP Verb ResourceURI 
Get all students GET /api/students 
Create a new student POST /api/students 
Get a student GET /api/students/{username} 
Update a student PUT /api/students/{username} 
Delete a student DELETE /api/students/{username}
Why to build RESTful Services? 
• Can be easily consumed by any client (Mobile Apps, SPA, Desktop 
Apps, Service to Service, etc…) 
• Lightweight (No XML parsing, less bandwidth, just the payloads) 
• Easier to learn and build, you can get up running quickly. 
• Closer to Web design specification, all about HTTP protocol.
Demo
To implement a Web API….. 
• Derive from API Controller 
• Implement your HTTP Methods 
• Maps URI space to your API controllers 
• Ex: api/{controller}/{id} 
• {controller} + “Controller ” = ApiController Type Name 
• Simple types are taken from URI 
• Route data, query parameters 
• Complex types come from the body 
• MediaTypeFormaters are configured to deserialize request body based on content 
type 
• JSON, XML, and form-url-encoded are supported out of the box
Demo
What is SPA? 
• Single Page Application – Bad Name maybe! (Rich Web 
Applications) 
• Load all necessary resources up-front with single page load (shell 
page) 
• Bring the desktop experience to the web – Partial loads 
• Built entirely with JS and HTML
Motivations to build SPA 
• Rich user experience – faster responses 
• Reduce round tripping between client and the server 
• Reach – SPAs can reach different users on different platforms.
SPA Architecture Philosophy 
• Thin Stateless Server 
• Role is a service (RESTful API is important) 
• Stateless server…easy to scale 
• Strong separation of concerns which leads to lower network latency, less 
bandwidth usage, snappy response 
• MVC at the Client 
• View: sets on top of the architecture (Think of page). 
• Model: set at the bottom of the architecture, holds the data for the view 
• Controller: Sets in between, orchestrator between View and Model, handle 
business logic
SPA Frameworks 
• Consider framework with features: 
• Browser history management (Support for back button) 
• Templating engine (Mustache, Handlebars, etc…) 
• Two way data binding 
• Routing service 
• Framework examples: 
• AngularJS 
• EmberJS 
• BackboneJS
Thank You!

More Related Content

What's hot (20)

PPTX
New microsoft office power point presentation
teach4uin
 
PDF
SharePoint App Types at a Glance
David J Rosenthal
 
PPTX
Salesforce UI API (TDXGG'18)
Rahul Malhotra
 
PPTX
MVC-3 Vs Webform
Jitendra Soni
 
PPTX
Introduction ASP
FaTin GhaZmi
 
PPTX
Mulesoft Salesforce Connector - OAuth 2.0 JWT Bearer
Vince Soliza
 
PPTX
Essential Knowledge for SharePoint Add-Ins
InnoTech
 
PPTX
Everybody loves Swagger
BizTalk360
 
DOCX
Domain and hostion
university of Gujrat, pakistan
 
PPTX
ECS 2018: Introduction to Azure Web Applications
Eric Shupps
 
PPTX
Benefits of developing single page web applications using angular js
Harbinger Systems - HRTech Builder of Choice
 
PPTX
SenchaCon 2016: Cross-Platform Mobile App Development with Cordova and Visual...
Sencha
 
PPTX
Apps for SharePoint 2013
Melick Baranasooriya
 
PPT
Active Server Page(ASP)
Keshab Nath
 
PPTX
Azure basics
Jitendra Soni
 
PPTX
Introducing Office Web Apps as a Tool for Developing Content Rich Applications
Ryan McIntyre
 
PDF
[Struyf] Automate Your Tasks With Azure Functions
European Collaboration Summit
 
PPTX
Mule integration with linkedin
Khasim Saheb
 
PPTX
Dreamforce 2018 Locker Service
Rahul Malhotra
 
PPTX
Mule Anypoint API Gateway
rkulandaivel
 
New microsoft office power point presentation
teach4uin
 
SharePoint App Types at a Glance
David J Rosenthal
 
Salesforce UI API (TDXGG'18)
Rahul Malhotra
 
MVC-3 Vs Webform
Jitendra Soni
 
Introduction ASP
FaTin GhaZmi
 
Mulesoft Salesforce Connector - OAuth 2.0 JWT Bearer
Vince Soliza
 
Essential Knowledge for SharePoint Add-Ins
InnoTech
 
Everybody loves Swagger
BizTalk360
 
Domain and hostion
university of Gujrat, pakistan
 
ECS 2018: Introduction to Azure Web Applications
Eric Shupps
 
Benefits of developing single page web applications using angular js
Harbinger Systems - HRTech Builder of Choice
 
SenchaCon 2016: Cross-Platform Mobile App Development with Cordova and Visual...
Sencha
 
Apps for SharePoint 2013
Melick Baranasooriya
 
Active Server Page(ASP)
Keshab Nath
 
Azure basics
Jitendra Soni
 
Introducing Office Web Apps as a Tool for Developing Content Rich Applications
Ryan McIntyre
 
[Struyf] Automate Your Tasks With Azure Functions
European Collaboration Summit
 
Mule integration with linkedin
Khasim Saheb
 
Dreamforce 2018 Locker Service
Rahul Malhotra
 
Mule Anypoint API Gateway
rkulandaivel
 

Similar to Build Modern Web Apps Using ASP.NET Web API and AngularJS (20)

PDF
The Characteristics of a Successful SPA
Gil Fink
 
PPTX
Angular jS Introduction by Google
ASG
 
PPTX
DIGIT Noe 2016 - Overview of front end development today
Bojan Veljanovski
 
PDF
End to-End SPA Development Using ASP.NET and AngularJS
Gil Fink
 
PDF
Single Page Apps
Gil Fink
 
PPTX
Will be an introduction to
Sayed Ahmed
 
PPTX
Single Page Applications: Your Browser is the OS!
Jeremy Likness
 
PDF
APIs Design - Creation - Management.pdf
WilliamELKAIMPhd
 
PDF
Single page applications with backbone js
Gil Fink
 
PPTX
The API and APP-ification of the Web
3scale
 
PPTX
Single page application
Arthur Fung
 
PDF
Single Page Application (SPA): A Comprehensive Guide for Beginners
Inexture Solutions
 
PPTX
Single Page Application
Isuru Madusanka
 
PDF
Past, Present and Future of APIs of Mobile and Web Apps
SmartBear
 
PDF
Components of a Generic Web Application Architecture
MadonnaLamin1
 
PPTX
JAX-RS. Developing RESTful APIs with Java
Jerry Kurian
 
PPTX
Single Page Apps
Mike (Michael) Acord
 
PPTX
ASP.NET Mvc 4 web api
Tiago Knoch
 
PPT
APITalkMeetupSharable
Obaidur (OB) Rashid
 
PPTX
RESTful APIs in .NET
Greg Sohl
 
The Characteristics of a Successful SPA
Gil Fink
 
Angular jS Introduction by Google
ASG
 
DIGIT Noe 2016 - Overview of front end development today
Bojan Veljanovski
 
End to-End SPA Development Using ASP.NET and AngularJS
Gil Fink
 
Single Page Apps
Gil Fink
 
Will be an introduction to
Sayed Ahmed
 
Single Page Applications: Your Browser is the OS!
Jeremy Likness
 
APIs Design - Creation - Management.pdf
WilliamELKAIMPhd
 
Single page applications with backbone js
Gil Fink
 
The API and APP-ification of the Web
3scale
 
Single page application
Arthur Fung
 
Single Page Application (SPA): A Comprehensive Guide for Beginners
Inexture Solutions
 
Single Page Application
Isuru Madusanka
 
Past, Present and Future of APIs of Mobile and Web Apps
SmartBear
 
Components of a Generic Web Application Architecture
MadonnaLamin1
 
JAX-RS. Developing RESTful APIs with Java
Jerry Kurian
 
Single Page Apps
Mike (Michael) Acord
 
ASP.NET Mvc 4 web api
Tiago Knoch
 
APITalkMeetupSharable
Obaidur (OB) Rashid
 
RESTful APIs in .NET
Greg Sohl
 
Ad

Recently uploaded (20)

PDF
Transcript: Book industry state of the nation 2025 - Tech Forum 2025
BookNet Canada
 
PDF
How do you fast track Agentic automation use cases discovery?
DianaGray10
 
PPTX
New ThousandEyes Product Innovations: Cisco Live June 2025
ThousandEyes
 
DOCX
Cryptography Quiz: test your knowledge of this important security concept.
Rajni Bhardwaj Grover
 
PPTX
The Project Compass - GDG on Campus MSIT
dscmsitkol
 
PDF
Bitcoin for Millennials podcast with Bram, Power Laws of Bitcoin
Stephen Perrenod
 
DOCX
Python coding for beginners !! Start now!#
Rajni Bhardwaj Grover
 
PDF
UPDF - AI PDF Editor & Converter Key Features
DealFuel
 
PDF
NLJUG Speaker academy 2025 - first session
Bert Jan Schrijver
 
PDF
The Rise of AI and IoT in Mobile App Tech.pdf
IMG Global Infotech
 
PDF
NASA A Researcher’s Guide to International Space Station : Physical Sciences ...
Dr. PANKAJ DHUSSA
 
PDF
Transforming Utility Networks: Large-scale Data Migrations with FME
Safe Software
 
PPTX
AI Penetration Testing Essentials: A Cybersecurity Guide for 2025
defencerabbit Team
 
PDF
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 
PPTX
Agentforce World Tour Toronto '25 - Supercharge MuleSoft Development with Mod...
Alexandra N. Martinez
 
PPTX
Mastering ODC + Okta Configuration - Chennai OSUG
HathiMaryA
 
PDF
[Newgen] NewgenONE Marvin Brochure 1.pdf
darshakparmar
 
PPTX
Digital Circuits, important subject in CS
contactparinay1
 
PPTX
From Sci-Fi to Reality: Exploring AI Evolution
Svetlana Meissner
 
PDF
UiPath DevConnect 2025: Agentic Automation Community User Group Meeting
DianaGray10
 
Transcript: Book industry state of the nation 2025 - Tech Forum 2025
BookNet Canada
 
How do you fast track Agentic automation use cases discovery?
DianaGray10
 
New ThousandEyes Product Innovations: Cisco Live June 2025
ThousandEyes
 
Cryptography Quiz: test your knowledge of this important security concept.
Rajni Bhardwaj Grover
 
The Project Compass - GDG on Campus MSIT
dscmsitkol
 
Bitcoin for Millennials podcast with Bram, Power Laws of Bitcoin
Stephen Perrenod
 
Python coding for beginners !! Start now!#
Rajni Bhardwaj Grover
 
UPDF - AI PDF Editor & Converter Key Features
DealFuel
 
NLJUG Speaker academy 2025 - first session
Bert Jan Schrijver
 
The Rise of AI and IoT in Mobile App Tech.pdf
IMG Global Infotech
 
NASA A Researcher’s Guide to International Space Station : Physical Sciences ...
Dr. PANKAJ DHUSSA
 
Transforming Utility Networks: Large-scale Data Migrations with FME
Safe Software
 
AI Penetration Testing Essentials: A Cybersecurity Guide for 2025
defencerabbit Team
 
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 
Agentforce World Tour Toronto '25 - Supercharge MuleSoft Development with Mod...
Alexandra N. Martinez
 
Mastering ODC + Okta Configuration - Chennai OSUG
HathiMaryA
 
[Newgen] NewgenONE Marvin Brochure 1.pdf
darshakparmar
 
Digital Circuits, important subject in CS
contactparinay1
 
From Sci-Fi to Reality: Exploring AI Evolution
Svetlana Meissner
 
UiPath DevConnect 2025: Agentic Automation Community User Group Meeting
DianaGray10
 
Ad

Build Modern Web Apps Using ASP.NET Web API and AngularJS

  • 1. Build Modern Web Apps using ASP.NET Web API & AngularJS Taiseer Joudeh Senior IT Team Lead at Aramex Twitter : @tjoudeh Blog: http://bitof tech.net
  • 2. Agenda • Deep dive into ASP.NET Web API • REST Specifications • Build RESTful HTTP service using Web API • Single Page Applications Overview • SPA Frameworks • Build simple SPA using AngularJS • Host the project on Microsoft Azure
  • 3. What is ASP.NET Web API? • Framework for building HTTP based services • Use HTTP is application protocol • Designed for broad reach (To any client speaks HTTP!) • HTTP != REST • The framework does not enforce an architectural style • Can be used with: • ASP.NET Web Forms • ASP.NET MVC
  • 4. ASP.NET Web API Features • Built on top of ASP.NET Stack • Native Support for ASP.NET Routing • Convention over Configuration • Native abstraction on top of raw HTTP protocol • Brand new HTTP client toolkit • High level of scalability on architecture and on the cloud • Easily build RESTful compliant Services
  • 5. What is RESTful Services? • REST = Representation State Transfer • Stateless architect which runs over HTTP (Not a protocol) • Four basic design principals for RESTful services: 1. Use HTTP Verbs only to interact with resources 2. Interaction with resources is stateless, request/response contain all information 3. Resources identified by URIs only (Services Discovery) 4. Content Negotiation (Support for XML/JSON)
  • 6. Resources in RESTful Services Operation HTTP Verb ResourceURI Get all students GET /api/students Create a new student POST /api/students Get a student GET /api/students/{username} Update a student PUT /api/students/{username} Delete a student DELETE /api/students/{username}
  • 7. Why to build RESTful Services? • Can be easily consumed by any client (Mobile Apps, SPA, Desktop Apps, Service to Service, etc…) • Lightweight (No XML parsing, less bandwidth, just the payloads) • Easier to learn and build, you can get up running quickly. • Closer to Web design specification, all about HTTP protocol.
  • 9. To implement a Web API….. • Derive from API Controller • Implement your HTTP Methods • Maps URI space to your API controllers • Ex: api/{controller}/{id} • {controller} + “Controller ” = ApiController Type Name • Simple types are taken from URI • Route data, query parameters • Complex types come from the body • MediaTypeFormaters are configured to deserialize request body based on content type • JSON, XML, and form-url-encoded are supported out of the box
  • 10. Demo
  • 11. What is SPA? • Single Page Application – Bad Name maybe! (Rich Web Applications) • Load all necessary resources up-front with single page load (shell page) • Bring the desktop experience to the web – Partial loads • Built entirely with JS and HTML
  • 12. Motivations to build SPA • Rich user experience – faster responses • Reduce round tripping between client and the server • Reach – SPAs can reach different users on different platforms.
  • 13. SPA Architecture Philosophy • Thin Stateless Server • Role is a service (RESTful API is important) • Stateless server…easy to scale • Strong separation of concerns which leads to lower network latency, less bandwidth usage, snappy response • MVC at the Client • View: sets on top of the architecture (Think of page). • Model: set at the bottom of the architecture, holds the data for the view • Controller: Sets in between, orchestrator between View and Model, handle business logic
  • 14. SPA Frameworks • Consider framework with features: • Browser history management (Support for back button) • Templating engine (Mustache, Handlebars, etc…) • Two way data binding • Routing service • Framework examples: • AngularJS • EmberJS • BackboneJS