Description
The variety of modern clients makes client-independent services essential. ASP.NET Web API provides tools for developing, configuring and publishing REST services.
What Will You Learn?
Participants develop an understanding of the API development principles needed for professional ASP.NET Web API projects.
Outline
Introduction to ASP.NET Web API
- Background: SOAP versus REST
- Architectural details and elements
- The role of Web API in modern architecture
- Web API and other architectural approaches
- Web API management
Asynchronous Programming with .NET
- Task-based asynchronous patterns
- Asynchronous language features in C# 5.0
HTTP, REST and Hypermedia
- HTTP fundamentals
- REST
- HttpClient
- Retrieving and sending data with HttpClient
- Sample application
Routing
- The routing mechanism
- Defining Web API routes
Controllers and Actions
- Creating controllers and actions
- Controller configuration
Message Handlers
- The message handler mechanism
- Creating custom message handlers
- Route-specific message handlers
Filters
- The filter processing model
- Filter types
Media Type Formatters and Model Binding
- The formatter processing model
- Default and custom formatters
- Formatter configuration
- Media type mappings
- Model binding
Input Validation
- Data annotations
- Customization
Dependency Management
- Dependency inversion and dependency injection
- Inversion of control (IoC)
- The service locator pattern
Unit and Integration Testing
Optimization and Performance
- Asynchronous operations
- HTTP caching
Deployment
Monitoring, Logging and API Documentation
Prerequisites
Knowledge of C#, object-oriented programming, database concepts, basic HTML and JavaScript is required.
