Microsoft Exam 70-486: Developing ASP.NET MVC 4 Web Applications intended to test candidate’s ability to design and develop ASP.NET MVC Web Application. It also coveres surrounding things like effective and user friendly User Interface design and development, develop and deploy multi-tier web applications, design and develop asynchronous solutions, come up with effective architectural solutions based on scenarios, implement proper security and attack proof solution and troubleshoot issues occurring at each stage of software development life cycle.
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Exam Ref 70-486: Developing ASP.NET MVC 4 Web Applications at Jinal Desai .NET
1. Articles from Jinal Desai .NET
Exam Ref 70-486: Developing ASP.NET MVC 4 Web
Applications
2013-02-07 17:02:27 Jinal Desai
Microsoft Exam 70-486: Developing ASP.NET MVC 4 Web Applications intended to
test candidate’s ability to design and develop ASP.NET MVC Web Application. It also
coveres surrounding things like effective and user friendly User Interface design and
development, develop and deploy multi-tier web applications, design and develop
asynchronous solutions, come up with effective architectural solutions based on
scenarios, implement proper security and attack proof solution and troubleshoot
issues occurring at each stage of software development life cycle.
It includes candidate’s knowledge on Javascript, HTML5, CSS3, ASP.NET MVC,
Entity Framework, WCF, Windows Azure, many plugins and packages. If you study
“Skills Measured” portion of Exam Details page at Microsoft Learning site you will
find that the syllabus covered almost all aspects necessary to plan, design, develop,
deploy and maintain enterprise level solution.
So to minimize the effort in preparation of the exam I have prepared reference links
covering each and every single topic covered in “Skills Measured” section.
1. Design the Application Architecture
Plan the application layers.
Plan data access.
ASP.NET MVC 3 Models and Data Access
Building a relational data model in ASP.NET MVC 3 w/EF Code
First
Building an ASP.NET MVC4 Application with EF and WebAPI
(Step by step)
EFMVC – ASP.NET MVC 4, Entity Framework 5 Code First and
Windows Azure (Demo App)
Plan for separation of concerns.
Clean Separation of Concerns in MVC
Compatibility of ASP.NET Web Forms and ASP.NET MVC
Separation of Concerns in ASP.NET MVC (In Short)
Appropriate use of models, views, and controllers.
Model View Controller Pattern
Understanding ASP.NET MVC Architecture
Choose between client-side and server side processing.
MVC or WebForms: It’s more about client side vs server side
Server Side Verses Client Side
Difference between ‘Client Side’ and ‘Server Side’
Design for scalability.
Improving .NET Application Performance and Scalability
2. Improve scalability in ASP.NET MVC using Asynchronous
requests
Design a distributed application.
Design a hybrid application (on premise vs. off premise, including
Windows Azure).
Building Hybrid Applications in the Cloud on Windows Azure
.NET On-Premises/Cloud Hybrid Application Using Service Bus
Relay
From on-premise solutions to Azure with ASP.NET MVC 4 and
SQL Azure
Plan for session management in a distributed environment.
Managing session state in Windows Azure: What are the
options?
Session State in Windows Azure
Implementing Session State Management in Windows Azure with
Azure Storage
Plan web farms.
Introducing the Microsoft Web Farm Framework
Web Farm – Load Balancing in ASP.NET
Other Useful Links
Planning Distributed Applications
Designing Distributed Applications
FoodMovers: Building Distributed Applications using Microsoft
Visual Studio .NET
Design and implement the Windows Azure role life cycle.
Identify and implement Start, Run, and Stop events.
Real World: Startup Lifecycle of a Windows Azure Role
How to Manage the Lifecycle of VM Role Instances in Windows
Azure
Identify startup tasks.
Windows Azure Start-up Tasks
Windows Azure Startup Tasks: Tips, Tricks, and Gotchas
Windows Azure Startup Tasks Introduction
Configure state management.
Choose a state management mechanism (in-process and out of
process state management, ViewState).
ASP.NET State Management Overview
Strongly Typed Session Variables in ASP.NET MVC
ViewData, ViewBag and TempData in ASP.NET MVC
Plan for scalability.
Fast, Scalable, and Secure Session State Management for Your
Web Applications
Scalable Session State Management and Distributed Caching
Use cookies or local storage to maintain state.
ASP.Net MVC and Cookies
ASP.NET MVC Working Smart With Cookies – Custom
ValueProvider
Storage APIs and AppCache API in HTML5
3. Apply configuration settings in web.config file.
“sessionState” Element in Web.Config
Implement sessionless state (for example, QueryString).
ASP.NET State Management Overview
Session-less Controllers in ASP.NET MVC
Design a caching strategy.
Implement page output caching (performance oriented).
Improving Performance with Output Caching
Implement data caching.
ASP.NET MVC Caching
Data Caching with .Net 4.0 and Asp.Net MVC
Implement HTTP caching.
How To Optimize Your Site With HTTP Caching
HTTP Caching
Design and implement a Web Socket strategy.
Read and write string and binary data asynchronously (long-
running data transfers).
What’s New in ASP.NET 4.5(Support for WebSockets Protocol)
Choose a connection loss strategy.
Decide a strategy for when to use Web Sockets.
HTML5 Web Sockets
Can I use Web Sockets?
Your users don’t care if you use Web Sockets
Design HTTP modules and handlers.
Implement synchronous and asynchronous modules and
handlers.
HTTP Handlers and HTTP Modules Overview
Choose between modules and handlers in IIS.
HTTP Handler vs HTTP Module
2. Design the User Experience
Apply the user interface design for a web application(I think this part is
already covered in 70-480).
Create and apply styles by using CSS.
Structure and layout the user interface by using HTML.
Implement dynamic page content based on a design.
Design and implement UI behavior.
Implement client validation.
ASP.NET MVC Model Validation
Custom Client Side Validation in ASP.NET MVC3
Use JavaScript and the DOM to control application behavior.
Extend objects by using prototypal inheritance.
Extending JavaScript Objects and Classes
Extending Classes In Object Oriented Javascript
Use AJAX to make partial page updates.
Partial page updates with ASP.NET MVC and jQuery
Enhancing Your Site with AJAX
Implement the UI by using JQuery.
jQuery UI
4. Compose the UI layout of an application.
Implement partials for reuse in different areas of the application.
Understanding Partial Views
Design and implement pages by using Razor templates (Razor
view engine).
ASP.NET MVC 3 Razor
Design layouts to provide visual structure.
ASP.NET MVC Layouts
ASP.NET MVC 3: Layouts with Razor
Implement master/application pages.
Working with Master Pages in ASP.NET MVC
Enhance application behavior and style based on browser feature
detection.
Detect browser features and capabilities.
Browser and Feature Detection
Create a web application that runs across multiple browsers and
mobile devices.
Mobile Web Sites with ASP.NET MVC and the Mobile Browser
Definition File
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).
Configuring a Web Application for Multiple Devices
Plan for mobile web applications.
ASP.NET MVC 4 Mobile Features
3. Develop the User Experience
Plan for search engine optimization and accessibility.
Use analytical tools to parse HTML.
Web and Google scraper / HTML parser for data mining, SEO
and business intelligence
Check Web Site’s (X)HTML & CSS, Accessibility & SEO
View and evaluate conceptual structure by using plugs-in for
browsers.
Firefox Plugins
Write semantic markup (HTML5 and ARIA) for accessibility, for
example, screen readers.
Accessibility in Visual Studio and ASP.NET
What is HTML5 ARIA?
Plan and implement globalization and localization.
Plan a localization strategy.
Create and apply resources to UI including JavaScript resources.
Set cultures.
Globalization, Internationalization and Localization in ASP.NET
MVC 3, JavaScript and jQuery
Create satellite resource assemblies.
Satellite Assemblies – Example in ASP.NET MVC
5. Design and implement MVC controllers and actions.
Apply authorization attributes and global filters.
Filtering in ASP.NET MVC
Implement action behaviors.
Actions in ASP.NET MVC 3
Implement action results.
Types of ASP.NET MVC 3 Action Results
Implement model binding.
The Features and Foibles of ASP.NET MVC Model Binding
Design and implement routes.
Define a route to handle a URL pattern. Apply route constraints.
Ignore URL patterns. Add custom route parameters.
ASP.NET Routing
Define areas.
Walkthrough: Organizing an ASP.NET MVC Application using
Areas
Control application behavior by using MVC extensibility points.
Implement MVC filters and controller factories.
Custom Controller Factory in ASP.NET MVC
Control application behavior by using action results, view engines,
model binders, and route handlers.
Reduce network bandwidth.
Bundle and minify scripts (CSS and JavaScript).
The Importance (and Ease) of Minifying your CSS and JavaScript
and Optimizing PNGs for your Blog or Website
Bundling and Minification
Compress and decompress data (using gzip/deflate; storage).
GZip/Deflate Compression in ASP.NET MVC
Plan a content delivery network (CDN) strategy, for example,
Windows Azure CDN.
Using the CDN to Deliver Static Content
Windows Azure CDN
4. Troubleshoot and Debug Web Applications
Prevent and troubleshoot runtime issues.
Troubleshoot performance, security, and errors.
MVC Mini Profiler
Implement secure ASP.NET MVC applications
Securing your ASP.NET MVC 4 App and the new
AllowAnonymous Attribute
Implement tracing, logging (including using attributes for logging),
and debugging (including IntelliTrace).
NuGet Package of the Week #5 – Debugging ASP.NET MVC
applications with Glimpse
Nuget Package ELMAH
Getting Started with ASP.NET MVC 3, Logging, and Depency
Injection
IntelliTrace: Fast Track to Debug Microsoft .NET Applications in
Visual Studio 2010
6. Diagnosing Issues in Production with IntelliTrace and Visual
Studio 2012
Enable and configure health monitoring (including Performance
Monitor).
Health Monitoring and ASP.NET MVC
Monitoring ASP.NET Application Performance
Design an exception handling strategy.
Handle exceptions across multiple layers.
Exception Handling in ASP.NET MVC
ASP.NET MVC Tutorial: Handling Errors and Exceptions
Display custom error pages using global.asax or creating your
own HTTPHandler or set web.config attributes.
How To Create an ASP.NET HTTP Handler by Using Visual C#
.NET
How to handle errors in ASP.NET MVC
Handle first chance exceptions.
FIRST CHANCE Exceptions
Test a web application.
Create and run unit tests, for example, use the Assert class,
create mocks.
Testable MVC
Automated Testing of ASP.NET MVC Applications
Create and run web tests.
Integration Testing Your ASP.NET MVC Application
Debug a Windows Azure application.
Collect diagnostic information by using Windows Azure
Diagnostics API Implement on demand vs. scheduled.
Digging into Windows Azure Diagnostics
Collecting Logging Data by Using Windows Azure Diagnostics
Choose log types, for example, event logs, performance
counters, and crash dumps.
Take Control of Logging and Tracing in Windows Azure
Debug a Windows Azure application by using IntelliTrace and
Remote Desktop Protocol (RDP).
Debugging Cloud Services
Using Remote Desktop with Windows Azure Roles
Remote Debugging a Windows Azure Role Instance
5. Design and Implement Security
Configure authentication.
Authenticate users. Enforce authentication settings. Choose
between Windows, Forms, and custom authentication.
Walkthrough: Using Forms Authentication in ASP.NET MVC
ASP.NET MVC Custom Authentication
How to implement windows authentication in ASP.NET MVC 3
Manage user session by using cookies.
HowTo: create and remove Cookies with ASP.NET MVC
ASP.NET MVC Tip #15 – Pass Browser Cookies and Server
Variables as Action Parameters
7. Configure membership providers.
Introduction to Membership
Introducing System.Web.Providers – ASP.NET Universal
Providers for Session, Membership, Roles and User Profile on
SQL Compact and SQL Azure
Create custom membership providers.
Custom Membership Providers
Build Your Own Membership System For ASP.NET MVC
Configure and apply authorization.
Create roles. Authorize roles by using configuration. Authorize
roles programmatically.
Membership and Authorization
Role-Based Authorization (C#)
Create custom role providers.
Implementing a Role Provider
Implement WCF service authorization.
Authentication and Authorization in WCF Services
Design and implement claims-based authentication across federated
identity stores.
Implement federated authentication by using Windows Azure
Access Control Service.
Federated Identity with Windows Azure Access Control Service
Create a custom security token by using Windows Identity
Foundation.
What is Windows Identity Foundation?
Write a custom security token and handler in Windows Identity
Foundation
Handle token formats (for example, oAuth, OpenID, LiveID, and
Facebook) for SAML and SWT tokens.
Access Ccontrol Service How To’s
Manage data integrity.
Apply encryption to application data.
Encrypted Hidden Inputs in ASP.NET MVC
Encrypting Data in MS SQL Database Without Breaking Asp.net
MVC Application
Apply encryption to the configuration sections of an application.
Encrypting and Decrypting Configuration Sections
Sign application data to prevent tampering.
How to: Sign Assemblies for Precompiled Web Site Projects
Implement a secure site with ASP.NET.
Secure communication by applying SSL certificates.
How To: Set Up SSL on a Web Server
Tip/Trick: Enabling SSL on IIS 7.0 Using Self-Signed Certificates
Salt and hash passwords for storage.
Hashing Password with Salt using MD5 or SHA1 in ASP.NET
MVC
Use HTML encoding to prevent cross-site scripting attacks (ANTI-
XSS Library).
8. Securing Your ASP.NET Applications
Anti-Cross Site Scripting Library
Implement deferred validation and handle unvalidated requests,
for example, form, querystring, and URL.
Deferred Validation and Unvalidated Requests
Prevent SQL injection attacks by parameterizing queries.
Hack-Proofing Your ASP.NET Applications
Prevent cross-site request forgeries (XSRF).
Prevent Cross-Site Request Forgery (CSRF) using ASP.NET
MVC’s AntiForgeryToken() helper
Conclusion
It is good to appear for this exam, but without preparation the exam proves tough. So
better to be well prepared before appearing for the exam. All the best for all
aspirants.