Reminder: Some of the content contained on these wiki pages is contributed by members of the community and Microsoft provides no specific endorsement for any third party resources listed here. Please review the Code of Conduct and Terms of Use for detailed guidelines.

Developer Certification Exam Prep Resources

Rate This:

487: Developing Windows Azure and Web Services

Preparation Tools and Resources

Search here for prep resources for specific exam topics and add any exam prep resources that you have found helpful in preparing for this exam.

General preparation material

1 Accessing Data

1.1 Choose data access technologies

Choose a technology (ADO.NET, Entity Framework, WCF Data Services, Azure storage) based on application requirements

1.3 Implement transactions

Manage transactions by using the API from System.Transactions namespace; implement distributed transactions; specify transaction isolation level

1.4 Implement data storage in Windows Azure

Access data storage in Azure; choose data storage mechanism in Azure (blobs, tables, queues, SQL Database); distribute data by using the Content delivery network (CDN); handle exceptions by using retries (SQL Database); manage Azure Caching

1.6 Manipulate XML data structures

Read filter, create, modify XML data structures; Manipulate XML data by using XMLReader, XMLWriter, XMLDocument, XPath, LINQ to XML; transform XML by using XSLT transformations

2 Querying and Manipulating Data by Using the Entity Framework

2.1 Query and manipulate data by using the Entity Framework

Query, update, and delete data by using DbContext; build a query that uses deferred execution; implement lazy loading and eager loading; create and run compiled queries; query data by using Entity SQL; perform asynchronous operations using Entity Framework; map a stored procedure

2.2 Query and manipulate data by using Data Provider for Entity Framework

Query and manipulate data by using Connection, DataReader, and Command from the System.Data.EntityClient namespace; perform synchronous and asynchronous operations; manage transactions (API); programmatically configure a Data Provider

2.3 Query data by using LINQ to Entities

Query data by using LINQ operators (for example, project, skip, aggregate, filter, and join); log queries and database commands; implement query boundaries (IQueryable vs. IEnumerable); implement async query.

2.4 Query and manipulate data by using ADO.NET

Query and manipulate data by using Connection, DataReader, Command, DataAdapter, DataSet; perform synchronous and asynchronous operations; manage transactions (API)

2.5 Create an Entity Framework data model

Structure the data model using table per type, table per class, table per hierarchy; choose and implement an approach to manage a data model (code first vs. model first vs. database first); implement POCO objects; describe a data model by using conceptual schema definitions, storage schema definition, mapping language (CSDL, SSDL, MSL), and Custom Code First Conventions

3 Designing and Implementing WCF Services

3.2 Configure WCF services by using configuration settings

Configure service behaviors; configure service endpoints; configure bindings including WebSocket bindings; specify a service contract; expose service metadata (XSDs, WSDL, and metadata exchange endpoint); configure message compression and encoding

3.3 Configure WCF services by using the API

Configure service behaviors; configure service endpoints; configure binding; specify a service contract; expose service metadata (XSDs, WSDL, and metadata exchange); WCF routing and discovery features

3.5 Consume WCF services

Generate proxies by using SvcUtil; generate proxies by creating a service reference; create and implement channel factories

3.6 Version a WCF service

Version different types of contracts (message, service, data); configure address, binding, and routing service versioning

3.7 Create and configure a WCF service on Windows Azure

Create and configure bindings for WCF services (Azure SDK—extensions to WCF); relay bindings to Azure using service bus endpoints; integrate with the Azure service bus relay

3.8 Implement messaging patterns

Implement one way, request/reply, streaming, and duplex communication; implement Azure Service Bus and Azure Queues

3.9 Host and manage services

Manage services concurrency (single, multiple, reentrant); create service hosts; choose a hosting mechanism; choose an instancing mode (per call, per session, singleton); activate and manage a service by using AppFabric; implement transactional services; host services in an Azure worker role

4 Creating and Consuming Web API-based services

4.1 Design a Web API

Define HTTP resources with HTTP actions; plan appropriate URI space, and map URI space using routing; choose appropriate HTTP method (get, put, post, delete) to meet requirements; choose appropriate format (Web API formats) for responses to meet requirements; plan when to make HTTP actions asynchronous; design and implement routes

4.2 Implement a Web API

Accept data in JSON format (in JavaScript, in an AJAX callback); use content negotiation to deliver different data formats to clients; define actions and parameters to handle data binding; use HttpMessageHandler to process client requests and server responses; implement dependency injection, along with the dependency resolver, to create more flexible applications; implement action filters and exception filters to manage controller execution; implement asynchronous and synchronous actions; implement streaming actions; implement SignalR; test Web API web services

4.3 Secure a Web API

Implement HTTPBasic authentication over SSL; implement Windows Auth; prevent cross-site request forgery (XSRF); design, implement, and extend authorization and authentication filters to control access to the application; implement Cross Origin Request Sharing (CORS); implement SSO by using OAuth 2.0; configure multiple authentication modes on a single endpoint

4.4 Host and manage a Web API

Host Web API in an ASP.NET app; self-host a Web API in your own process (a Windows service) including Open Web Interface for .NET (OWIN); host services in an Azure worker role; restrict message size; configure the host server for streaming

4.5 Consume Web API web services

Consume Web API services by using HttpClient synchronously and asynchronously; send and receive requests in different formats (JSON/HTML/etc.); request batching


5 Deploying Web Applications and Services

5.2 Choose a deployment strategy for a Windows Azure web application

Perform an in-place upgrade and VIP swap; configure an upgrade domain; create and configure input and internal endpoints; specify operating system configuration; deploy applications using Azure Web Site

5.3 Configure a web application for deployment

Switch from production/release mode to debug mode; use SetParameters to set up an IIS app pool; set permissions and passwords; enable and monitor ASP.NET App Suspend; configure WCF endpoints (including HTTPS protocol mapping), bindings, and behaviors; transform web.config by using XSLT (for example, across development, test, and production/release environments); configure Azure configuration settings

5.4 Manage packages by using NuGet

Create and configure a NuGet package; install and update an existing NuGet package; connect to a local repository cache for NuGet, set up your own package repository

5.6 Share assemblies between multiple applications and servers

Prepare the environment for use of assemblies across multiple servers (interning); sign assemblies by using a strong name; deploy assemblies to the global assembly cache; implement assembly versioning; create an assembly manifest; configure assembly binding redirects (for example, from MVC4 to MVC5)

  • stuartdotnet

    Main pages for Skills Measured and MS Learning Page are showing errors.

  • stuartdotnet

    Big thanks to for most of these links.

  • Vamsikrishna

    This is quite an exhaustive study guide, looks like it has neatly covered all topics. However, just want to know the practical aspects, how useful were these in actual passing of the exam 70-487 ? Any insights on the actual exam experience with this exam guide as source would be really useful.

  • stuartdotnet

    My advice would be to follow the Skills Measured ( and use this study guide to dive deeper into each topic. The official book is also a good start, but it does have some significant gaps which are covered by this guide.

    When you find a link in this guide which is a collection of articles rather than a single article, you shouldn't need to learn all the articles, the list is just for reference. Again, refer to the Skills Measured.