Published: October 4, 2012
Languages: English, Chinese (Simplified), French, German, Japanese, Portuguese (Brazil)
Audiences: Developers
Technology: Microsoft Visual Studio 2013, ASP.NET MVC 5.1
Credit toward certification: MCP, MCSD

Skills measured
This exam measures your ability to accomplish the technical tasks listed below. The percentages indicate the relative weight of each major topic area on the exam. The higher the percentage, the more questions you are likely to see on that content area on the exam. 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.

Starting April 30, 2014, the questions on this exam include content covering Visual Studio 2013, MVC5, and updates to Microsoft Azure.

Design the application architecture (15-20%)
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 HTTP modules and handlers
Implement synchronous and asynchronous modules and handlers, choose between modules and handlers in IIS

Preparation resources
Entity Framework Development workflows
DataAdapters and DataReaders
ASP.NET State Management overview

Design the user experience (20-25%)
Apply the user interface design for a web application
Create and apply styles by using CSS, structure and lay out the user interface by using HTML, implement dynamic page content based on a design
Design and implement UI behavior
Implement client validation, use JavaScript and the DOM to control application behavior, extend objects by using prototypal inheritance, use AJAX to make partial page updates, implement the UI by using JQuery
Compose the UI layout of an application
Implement partials for reuse in different areas of the application, design and implement pages by using Razor templates (Razor view engine), design layouts to provide visual structure, implement master/application pages
Enhance application behavior and style based on browser feature detection
Detect browser features and capabilities; create a web application that runs across multiple browsers and mobile devices; enhance application behavior and style by using vendor-specific extensions, for example, CSS
Plan an adaptive UI layout
Plan for running applications in browsers on multiple devices (screen resolution, CSS, HTML), plan for mobile web applications

Preparation resources
Build a better mobile browsing experience
Display modes
Building Modern Web Apps Jump Start

Develop the user experience (15-20%)
Plan for search engine optimization and accessibility
Use analytical tools to parse HTML, view and evaluate conceptual structure by using plugs-in for browsers, write semantic markup (HTML5 and ARIA) for accessibility (for example, screen readers)
Plan and implement globalization and localization
Plan a localization strategy; create and apply resources to UI, including JavaScript resources; set cultures; create satellite resource assemblies
Design and implement MVC controllers and actions
Apply authorization attributes, global filters, and authentication filters; specify an override filter; implement action behaviors; implement action results; implement model binding
Design and implement routes
Define a route to handle a URL pattern, apply route constraints, ignore URL patterns, add custom route parameters, define areas
Control application behavior by using MVC extensibility points
Implement MVC filters and controller factories; control application behavior by using action results, viewengines, model binders, and route handlers
Reduce network bandwidth
Bundle and minify scripts (CSS and JavaScript), compress and decompress data (using gzip/deflate; storage), plan a content delivery network (CDN) strategy (for example, Azure CDN)

Preparation resources
Search Engine Optimization Toolkit
GlobalizationSection Class
FormCollection Class

Troubleshoot and debug web applications (20-25%)
Prevent and troubleshoot runtime issues
Troubleshoot performance, security, and errors; implement tracing, logging (including using attributes for logging), and debugging (including IntelliTrace); enforce conditions by using code contracts; enable and configure health monitoring (including Performance Monitor)
Design an exception handling strategy
Handle exceptions across multiple layers, display custom error pages using global.asax or creating your own HTTPHandler or set web.config attributes, handle first chance exceptions
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.

Preparation resources
Using shims to isolate your application from other assemblies for unit testing

Design and implement security (20-25%)
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 authorization
Create roles, authorize roles by using configuration, authorize roles programmatically, create custom role providers, implement WCF service authorization
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
Manage data integrity
Apply encryption to application data, apply encryption to the configuration sections of an application, sign application data to prevent tampering
Implement a secure site with ASP.NET
Secure communication by applying SSL certificates; salt and hash passwords for storage; use HTML encoding to prevent cross-site scripting attacks (ANTI-XSS Library); implement deferred validation and handle unvalidated requests, for example, form, querystring, and URL; prevent SQL injection attacks by parameterizing queries; prevent cross-site request forgeries (XSRF)

Preparation resources
Introduction to ASP.NET Identity
Chapter 5: Authentication, authorization, and identities in WCF
Easy Web App Integration with Windows Azure Active Directory, ASP.NET & Visual Studio


QUESTION 1
If the canvas element is supported by the client browser, the application must display “London 2012” in the footer as text formatted by JavaScript at the end of the _Layout.cshtml file.
You need to modify the layout to ensure that “London 2012″ is displayed as either formatted text or as plain text, depending on what the client browser supports.
Which code segment should you add?

A. <canvas id=”myFooter”>
@(Request,Browser.JavaApplets ? new HtmlString(“London 2012″) : null) </canvas>
B. <canvas id=”myFooter”>London 2012</canvas>
C. <canvas id=”myCanvas”>London 2012</canvas>
D. <canvas id=”myCanvas”></canvas>
<p>London 2012</p>

Answer: C


QUESTION 2
You need to make all of the rows in the table bold in the Views/RunLog/GetLog.cshtml view.
Which code segment should you use?

A. Table > th:last-child { font-weight: bold; }
B. Table+first-child{ font-weight: bold; }
C. Table>tr>th:nth-child{2){font-weight: bold; }
D. Table > tr {font-weight: bold;}

Answer: D


QUESTION 3
You need to display the “miles” unit description after the distance in the GetLog view.
Which line of code should you use to replace line GL21? (Each correct answer presents a complete solution. Choose all that apply.)

A. @log.Distance miles
B. @Htrml.DisplayFor(model => log.Distance) miles
C. @log.Distance.ToString() @Html.TextArea(“miles”)
D. @Html.DisplayFor(model => log.Distance.ToString() + ” miles”)

Answer: A,B


QUESTION 4
You need to implement the business requirements for managing customer data.
What should you do? (Each correct answer presents part of the solution. Choose all that apply.)

A. Add a class named Customer-Controller to the Controllers folder. Then add a method named Edit to the class.
B. Create a new controller named Administration in the Controllers folder. Add an action named EditCustomer to the controller.
C. Add a folder named Customer to the Views folder. Then create a view inside this folder named Edit.aspx.
D. Create a new folder named EditCustomer to the Views folder. In the new folder, create a new file named Administration.aspx.

Answer: A,B

Click here to view complete Q&A of 70-486 exam
Certkingdom Review

MCTS Training, MCITP Trainnig

Best Microsoft MCTS Certification, Microsoft 70-486 Training at certkingdom.com