20487: Developing Windows Azure and Web Services

About this course

In this course, students will learn how to design and develop services that access local and remote data from various data sources. Students will also learn how to develop and deploy services to hybrid environments, including on-premises servers and Windows Azure. This course helps people prepare for exam 70-487.

Audience profile

This course is intended for both novice and experienced .NET developers who have a minimum of six months programming experience, and want to learn how to develop services and deploy them to hybrid environments.

At course completion

After completing this course, students will be able to:

  • Query and manipulate data with Entity Framework
  • Use ASP.NET Web API to create HTTP-based services and consume them from .NET and non-.NET clients
  • Extend ASP.NET Web API services using message handlers, model binders, action filters, and media type formatters
  • Create SOAP-based services with the Windows Communication Foundation (WCF) and consume them from .NET clients
  • Apply design principles to service contracts and extend WCF services using custom runtime components and behaviors
  • Secure WCF services using transport and message security
  • Use Windows Azure Service Bus for relayed messaging and brokered messaging using queues and topics
  • Host services on on-premises servers, and on various Windows Azure environments, such as Web Roles, Worker Roles, and Web Sites
  • Deploy services to both on-premises servers and Windows Azure
  • Store and access data in Windows Azure Storage, and configure storage access rights
  • Monitor and log services, both on-premises and in Windows Azure
  • Implement federated authentication by using ACS with ASP.NET Web API services
  • Create scalable, load-balanced services

Module 1: Overview of service and cloud technologies

This module describes the Microsoft data, service, and cloud stacks. It also describes the various components that comprise Windows Azure.


  • Key Components of Distributed Applications
  • Data and Data Access Technologies
  • Service Technologies
  • Cloud Computing
  • Exploring Blue Yonder Airlines’ Travel Companion Application

Lab : Exploring the work environment

Module 2: Querying and manipulating data using Entity Framework

This module explains how to create Entity Framework models and use them to query and manipulate data.


  • ADO.NET overview
  • Creating an entity data model
  • Querying data
  • Manipulating data

Lab : Creating a data access layer using Entity Framework

Module 3: Creating and consuming ASP.NET Web API services

This module explains how to create HTTP based services using the ASP.NET Web API.


  • What are HTTP services?
  • Creating an ASP.NET Web API service
  • Handling HTTP requests and responses
  • Hosting and consuming ASP.NET Web API services

Lab : Creating the travel reservation ASP.NET Web API service

Module 4: Extending and securing ASP.NET Web API services

This module explains how to extend and secure ASP.NET web API services to support real world scenarios.


  • The ASP.NET Web API request pipeline
  • The ASP.NET Web API response pipeline
  • Creating OData services
  • Implementing Security in ASP.NET Web API services
  • Injecting dependencies into controllers

Lab : Extending Travel Companion’s ASP.NET Web API services

Module 5: Creating WCF services

This module explains how to create WCF services, host them, and consume them from other applications.


  • Advantages of creating services with WCF
  • Creating and implementing a contract
  • Configuring and hosting WCF services
  • Consuming WCF services

Lab : Creating and consuming the WCF booking service

Module 6: Designing and extending WCF services

This module explains how to design a WCF service contracts with duplex support, async operations, and one-way operations. It also explains how to create services that use various instancing and concurrency modes. In addition, it describes how to extend a WCF service with custom behaviors and runtime components.


  • Applying design principles to service contracts
  • Handling distributed transactions
  • WCF pipeline architecture
  • Extending the WCF pipeline

Lab : Designing and extending WCF services

Module 7: Implementing Security in WCF services

This module explains how to implement security in WCF services by using transport and message security. It also describes how to configure and implement authentication and authorization for a service


  • Transport security
  • Message security
  • Configuring service authentication and authorization

Lab : Securing a WCF service

Module 8: Windows Azure Service Bus

This module explains how to use the Windows Azure Service Bus for advanced routing and messaging scenarios.


  • Windows Azure Service Bus Relays
  • Windows Azure Service Bus Queues
  • Windows Azure Service Bus Topics

Lab : Windows Azure Service Bus

Module 9: Hosting services

This module explains how to host services on various Windows Azure environments, such as Web Roles, Worker Roles, and Web Sites.


  • Hosting services on-premises
  • Hosting services in Windows Azure

Lab : Hosting Services

Module 10: Deploying Services

This module explains how to deploy services to both on-premises and cloud environments.


  • Web Deployment with Visual Studio
  • Creating and deploying Web Application packages
  • Command-line tools for web deployment packages
  • Deploying to Windows Azure
  • Continuous delivery with TFS and GIT
  • Best practices for production deployment

Lab : Deploying services

Module 11: Windows Azure Storage

This module explains how to store and access data stored in Windows Azure Storage. It also explains how to configure storage access rights for storage containers and content.


  • Introduction to Windows Azure storage
  • Windows Azure Blob Storage
  • Windows Azure Table Storage
  • Windows Azure Queue Storage
  • Restricting access to Windows Azure Storage

Lab : Windows Azure Storage

Module 12: Monitoring and diagnostics

This module explains how to monitor and log services, both on-premises and in Windows Azure.


  • Performing diagnostics using tracing
  • Configuring service diagnostics
  • Monitoring IIS
  • Monitoring services using Windows Azure diagnostics
  • Debugging using IntelliTrace
  • Collecting Windows Azure metrics

Lab : Monitoring and Diagnostics

Module 13: Identity management and access control

This module describes claim-based identity concepts and standards, and how to implement federated authentication by using ACS to secure an ASP.NET Web API service. It also explains how to use ACS to secure Windows Azure Service Bus connections.


  • Claim-based identity concepts
  • Access Control Service
  • Configuring services to use federated identities
  • Handling federated identities in the client side

Lab : Identity management and access control

Module 14: Scaling Services

This module explains how to create scalable services and applications.


  • Introduction to scalability
  • Load balancing
  • Scaling on-premises services with distributed cache
  • Windows Azure caching
  • Caveats of scaling services
  • Scaling globally

Lab : Scalability

Before attending this course, students must have:
  • Experience with C# programming, and concepts such as Lambda expressions, LINQ, and anonymous types.
  • Understanding the concepts of n-tier applications.
  • Experience with querying and manipulating data with ADO.NET.
  • Knowledge of XML data structures.

Auditoriniai mokymai

Pradžios data Trukmė, d. Kurso pavadinimas Kaina, € Statusas
Užklausti 5 20480: Programming in HTML5 with JavaScript and CSS3 € 1,500
Užklausti 5 20483: Programming in C# € 1,500
Užklausti 5 20486: Developing ASP.NET MVC 4 Web Applications € 1,500
Užklausti 5 20481: Essentials of Developing Windows Store Apps Using HTML5 and JavaScript € 1,500
Užklausti 5 20485: Advanced Windows Store App Development Using C# € 1,500
Užklausti 5 Building Effective Websites Using Microsoft MVC (nuotolinė klasė - ENG) € 1,500 Organizuojamas
Užklausti 5 Developing ASP.net MVC WEB Applications (nuotolinė klasė - ENG) € 1,500 Organizuojamas

Nuotoliniai mokymai

Invalid data source. Please correct the following errors:

  • The data source tag/idis missing or it is invalid