Boost your exam-day confidence with an Exam Replay or an Exam Replay with Practice Test.

Exam
70-494

Visual Studio logo

  • Published:
    01 August 2014
  • Languages:
    English, Japanese
  • Audiences:
    Developers
  • Technology:
    ASP.NET MVC
  • Credit towards certification:
    MCP, MCSD

Recertification for MCSD: Web Applications

* Pricing does not reflect any promotional offers or reduced pricing for Microsoft Imagine Academy program members, Microsoft Certified Trainers, and Microsoft Partner Network program members. Pricing is subject to change without notice. Pricing does not include applicable taxes. Please confirm exact pricing with the exam provider before registering to take an exam.

Effective May 1, 2017, the existing cancellation policy will be replaced in its entirety with the following policy: Cancelling or rescheduling your exam within 5 business days of your registered exam time is subject to a fee. Failing to show up for your exam appointment or not rescheduling or cancelling your appointment at least 24 hours prior to your scheduled appointment forfeits your entire exam fee.

Skills measured

This exam measures your ability to accomplish the technical tasks listed below. View video tutorials about the variety of question types on Microsoft exams.

Please note that the questions may test on, but will not be limited to, the topics described in the bulleted text.

Do you have feedback about the relevance of the skills measured on this exam? Please send Microsoft your comments. All feedback will be reviewed and incorporated as appropriate while still maintaining the validity and reliability of the certification process. Note that Microsoft will not respond directly to your feedback. We appreciate your input in ensuring the quality of the Microsoft Certification Program.

If you have concerns about specific questions on this exam, please submit an exam challenge.

If you have other questions or feedback about Microsoft Certification exams or about the certification program, registration, or promotions, please contact your Regional Service Center.

Design the application architecture
  • Plan the application layers
    • Plan data access; plan for separation of concerns; appropriate use of models, views and controllers; choose between client-side and server side processing; design for scalability
  • Design a distributed application
    • Design a hybrid application (on-premises versus off-premises, including Azure), plan for session management in a distributed environment, plan web farms
  • Design and implement the Azure role life cycle
    • Identify and implement Start, Run and Stop events; identify startup tasks (IIS configuration [app pool], registry configuration, third-party tools)
  • Configure state management
    • Choose a state management mechanism (in-process and out of process state management), plan for scalability, use cookies or local storage to maintain state, apply configuration settings in web.config file, implement sessionless state (for example, QueryString)
  • Design a caching strategy
    • Implement page output caching (performance oriented), implement data caching, implement HTTP caching, implement Azure caching
  • Design and implement a WebSocket strategy
    • Read and write string and binary data asynchronously (long-running data transfers), choose a connection loss strategy, decide a strategy for when to use WebSockets, implement SignalR
Design and develop the user experience
  • Plan an adaptive UI layout
    • Plan to run applications in browsers on multiple devices (screen resolution, CSS, HTML), plan for mobile web applications
  • Design and implement MVC controllers and actions
    • Apply authorisation attributes, global filters and authentication filters; specify an override filter; implement action behaviours; implement action results; implement model binding
Troubleshoot and debug web applications
  • Test a web application
    • Create and run unit tests (for example, use the Assert class), create mocks; create and run web tests, including using Browser Link; debug a web application in multiple browsers and mobile emulators
  • Debug an Azure application
    • Collect diagnostic information by using Azure Diagnostics API and appropriately implement on demand versus scheduled; choose log types (for example, event logs, performance counters and crash dumps); debug an Azure application by using IntelliTrace, Remote Desktop Protocol (RDP) and remote debugging; interact directly with remote Azure websites using Server Explorer
Design and implement security
  • Configure authentication
    • Authenticate users; enforce authentication settings; choose between Windows, Forms and custom authentication; manage user session by using cookies; configure membership providers; create custom membership providers; configure ASP.NET Identity
  • Configure and apply authorisation
    • Create roles, authorise roles by using configuration, authorise roles programmatically, create custom role providers, implement WCF service authorisation
  • Design and implement claims-based authentication across federated identity stores
    • Implement federated authentication by using Azure Access Control Service; create a custom security token by using Windows Identity Foundation; handle token formats (for example, oAuth, OpenID, Microsoft Account, Google, Twitter and Facebook) for SAML and SWT tokens
Accessing data
  • Choose data access technologies
    • Choose a technology (ADO.NET, Entity Framework, WCF Data Services, Azure storage) based on application requirements
Querying and manipulating data by using Entity Framework
  • 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
  • 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
  • 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
  • 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
Designing and implementing WCF Services
  • Configure WCF services by using configuration settings
    • Configure service behaviours; 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
  • Secure a WCF service
    • Implement message level security, implement transport level security; implement certificates; design and implement multiple authentication modes
Creating and consuming Web API-based services
  • 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
  • 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
  • Secure a Web API
    • Implement HTTPBasic authentication over SSL; implement Windows Auth; prevent cross-site request forgery (XSRF); design, implement and extend authorisation 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
  • Host and manage 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
  • 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
Deploying web applications and services
  • Choose a deployment strategy for an 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
  • 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 behaviours; transform web.config by using XSLT (for example, across development, test and production/release environments); configure Azure configuration settings
  • Create, configure and publish a web package
    • Create an IIS InstallPackage; configure the build process to output a web package; apply pre- and post- condition actions to ensure that transformations are correctly applied; include appropriate assets (web content, certificates)
  • 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)

Preparation options

Instructor-led training
Find a Microsoft Learning Partner near you
Exam prep videos

Microsoft Certification PREP Talk: Exam 486

In this episode of Prep tips from certification experts, James Seymour, Certification Planner and Jeremy Foster, Developer Evangelist, discuss the relevancy of the skills being measured in Exam 486.

Microsoft Certification PREP Talk: Exam 487

In this episode of Prep tips from certification experts, James Seymour, Certification Planner and Jeremy Foster, Developer Evangelist, discuss the relevancy of the skills being measured in Exam 487.

Self-paced training
  • Developing ASP.NET MVC 4 Web Applications Jump Start

    Developers for the Microsoft platform should take this course if you are ready to start building enterprise web applications, if you need to ramp up on the new Model View Control (MVC) features or if you want to update your Microsoft certification. The course tells you what you need to know and prepares you for Exam 70-486.

  • Developing Windows Azure and Web Services Jump Start

    Web developers, are you looking for ways to increase your reach and reduce your work? Find out how to build Web API or WCF services that can access data and are hosted in Windows Azure. If you want to build services that can be accessed by apps across multiple devices, this is the Jump Start for you. You'll get the end-to-end scenario for building the entire application.

Practice test
From the community
Books
Exam Ref 70-486: Developing ASP.NET MVC 4 Web Applications cover

Exam Ref 70-486: Developing ASP.NET MVC 4 Web Applications
Published: September 2013

Prepare for Microsoft Exam 70-486—and help demonstrate your real-world mastery of developing ASP.NET MVC-based solutions. Designed for experienced developers ready to advance their status, Exam Ref focuses on the critical-thinking and decision-making acumen needed for success at the Microsoft Specialist level.

Buy this book at the Microsoft Press Store

Exam Ref 70-487: Developing Windows Azure and Web Services cover

Exam Ref 70-487: Developing Windows Azure and Web Services
Published: November 2013

Prepare for Microsoft Exam 70-487 and help demonstrate your real-world mastery of developing Azure and Web Services. Designed for experienced developers ready to advance their status, Exam Ref focuses on the critical-thinking and decision-making acumen needed for success at the Microsoft Specialist level.

Buy this book at the Microsoft Press Store

Who should take this exam?

This exam is for individuals looking to maintain their MCSD: Web Applications certification. It is based on the exam objectives from 486 and 487.

More information about exams

Preparing for an exam

We recommend that you review this exam preparation guide in its entirety and familiarise yourself with the resources on this website before you schedule your exam. See the Microsoft Certification exam overview for information about registration, videos of typical exam question formats and other preparation resources. For information on exam policies and scoring, see the Microsoft Certification exam policies and FAQs.

Note

This preparation guide is subject to change at any time without prior notice and at the sole discretion of Microsoft. Microsoft exams might include adaptive testing technology and simulation items. Microsoft does not identify the format in which exams are presented. Please use this preparation guide to prepare for the exam, regardless of its format. To help you prepare for this exam, Microsoft recommends that you have hands-on experience with the product and that you use the specified training resources. These training resources do not necessarily cover all of the topics listed in the "Skills measured" section.