Published: August 1, 2014
Languages: English, Japanese
Audiences: Developers
Technology: ASP.NET MVC
Credit toward certification: MCP, MCSD

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 for running applications in browsers on multiple devices (screen resolution, CSS, HTML), plan for mobile web applications
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

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 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

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 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
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 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
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 behaviors; 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)

You need to choose the appropriate data access strategy for the college textbook area of the web application.
Which data access technology should you implement?

A. WCF Data Services
C. Entity Data Model (EDM)

Answer: D

You need to choose the appropriate data access technology for the children’s book area of the web application.
Which data access technology should you choose?

A. ADO.NET Entity Framework
B. Web Service
D. WCF Data Services

Answer: A

You are developing an ASP.NET MVC application that is secured using SSL. You are ready to deploy the application to production.
The deployment package must include the installation of the SSL certificate.
You need to configure the deployment package to meet the requirement.
What should you do?

A. In the Package/Publish settings of the project, select the All Files in this project folder option.
B. In the Build Events settings of the project, configure a pre-build event to include the SSL certificate.
C. Create a web publish pipeline target file with a custom web deploy target.
D. In the Signing dialog box, choose Sign the assembly and select the appropriate entry from the Choose a strong name key file list.

Answer: C

You need to choose the appropriate data access technology for the cookbook area of the web application. Which data access technology should you choose?

A. Entity Framework
D. WCF Data Services

Answer: D

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

MCTS Training, MCITP Trainnig

Best Microsoft MCTS Certification, Microsoft 70-494 Training at