Wednesday 20 July 2016

Exam 70-494 Recertification for MCSD: Web Applications

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)
QUESTION 1
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
B. ADO.NET
C. Entity Data Model (EDM)
D. LINQ to SQL

Answer: D


QUESTION 2
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
C. LINQ to SQL
D. WCF Data Services

Answer: A

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


QUESTION 4
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
B. ADO.NET
C. LINQ to SQL
D. WCF Data Services

Answer: D

Saturday 9 July 2016

Exam 70-489 Developing Microsoft SharePoint Server 2013 Advanced Solutions

Published: November 20, 2013
Languages: English, Chinese (Simplified), French, German, Japanese, Portuguese (Brazil)
Audiences: Developers
Technology: Microsoft SharePoint Server 2013
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.

Design and implement search (15–20%)
Query search
This objective may include but is not limited to: build search queries using FAST Query Language (FQL) and Keyword Query Language (KQL), execute search queries using client-side object model (CSOM), Web Services, and REST
Customize search results
This objective may include but is not limited to: create custom result sources, create display templates, create result types, create custom refiner definitions, implement query rules
Customize content processing
This objective may include but is not limited to: feed external content types, implement content processing extensions (entity extraction), configure out-of-the box content processing, create content mappings

Preparation resources

Building search queries in SharePoint 2013
Customizing search results in SharePoint 2013
Custom content processing with the Content Enrichment web service callout

Implement Business Connectivity Services (BCS) (10–15%)
Create a model
This objective may include but is not limited to: optimize queries for performance and throttling, use naming conventions, use batching, create filters, implement methods, create associations
Create external content types
This objective may include but is not limited to: use SQL data sources, use Windows Communication Foundation (WCF) Web Services, use OData, use .NET connector
Implement authorization and authentication
This objective may include but is not limited to: use pass-through, use BCS Identity and User Identity, use a custom model
Create custom connectors
This objective may include but is not limited to: implement methods (including Search), implement security trimming, implement configuration properties, implement caching, implement external event receiver
Access BCS data
This objective may include but is not limited to: use BCS Web Parts, use BCS data in workflows, use BCS CSOM, use the server-side object model, use BCS REST
Implement client-side BCS
This objective may include but is not limited to: use caching, use Microsoft Office apps, use Microsoft Visual Studio Tools for Office, use SQL replication, implement authorization and authentication

Preparation resources
Business Connectivity Services in SharePoint 2013
External content types in SharePoint 2013
BCS client object model reference for SharePoint 2013

Implement user profiles and customize social workload (15–20%)
Manage user profile properties
This objective may include but is not limited to: create and update user profile properties, update privacy filters, map properties to external data, use managed metadata term sets, update profile picture
Manage feeds
This objective may include but is not limited to: use CSOM to follow documents, people, sites, get feeds, create posts, and manage like, reply, mention, tag, link, add pictures
Access user profile data
This objective may include but is not limited to: use CSOM, use the object model, use REST, use Web Services

Preparation resources
Work with user profiles in SharePoint 2013
How to: Learn to read and write to the social feed by using the REST service in SharePoint 2013
Data access options for apps in SharePoint 2013

Implement Enterprise Content Management (ECM) and Web Content Management (WCM) (15–20%)
Implement a multilingual site
This objective may include but is not limited to: submit a page or batch of pages for translation, publish pages, create source and target labels, create channels, implement multi-language site navigation
Implement e-discovery
Exchange Web Services, specify content sources and Search criteria, export discovery sets, manage permissions for hold
Implement Search Engine Optimization (SEO)
This objective may include but is not limited to: create a site map, customize a site map, maintain SEO configuration properties, maintain robots.txt file, maintain SEO properties on term
Implement content management
This objective may include but is not limited to: create information management policies, create content organizer rules, create document sets, create document ID providers
Implement a publishing page
This objective may include but is not limited to: add field controls to a page layout, add web parts to a page layout, create a publishing page layout, inherit content types

Preparation resources
eDiscovery in SharePoint 2013
How to: Create a page layout in SharePoint 2013
Plan web content management in SharePoint Server 2013

Design for performance and troubleshooting (15–20%)
Design solutions to handle a high-traffic site
This objective may include but is not limited to: combine images, implement caching, minimize number of queries, optimize JavaScript loading, use Content Delivery Networks (CDNs), create a scalable aggregator
Design client applications for performance
This objective may include but is not limited to: leverage health score rules, optimize number of batch server requests, use client-side cache, minimize amount of data requested
Monitor and mitigate performance and scalability issues
This objective may include but is not limited to: diagnose application stability issues, debug the server side and app code on the client side, create application diagnostics, measure and test application performance

Preparation resources
Plan for performance and capacity management in SharePoint Server 2013
Solving problems and troubleshooting in SharePoint 2013
Plan for caching and performance in SharePoint Server 2013

Implement Managed Metadata Service (MMS) (15–20%)
Manage term sets
This objective may include but is not limited to: import and export term sets, create multilingual labels, reuse terms, manage term properties, perform translation, create groups, and assign permissions
Create solutions by using MMS
This objective may include but is not limited to: use Profile Pages, use the Product Catalog, use cross-site publishing, integrate with Search, implement metadata-driven navigation
Use an MMS API
This objective may include but is not limited to: use CSOM in client applications, use REST in client applications, use managed fields, use server-side object model

Preparation resources
Managed metadata and navigation in SharePoint 2013
SharePoint 2013: Import a term set from an external source
Cross-site publishing in SharePoint 2013


QUESTION 1
You need to configure the external content type to search for research papers.
Which indexing connector should you use?

A. .NET Type Connector
B. WCF Service Connector
C. Custom Connector
D. SQL Server Connector

Answer: B


QUESTION 2
You need to generate document identifiers for each new document that is uploaded to the site.
What should you do?

A. Create a derived class that inherits from the abstract class named Microsoft.Office.DocumentManagement.Documentld and then override all of the abstract methods.
B. Create a derived class that inherits from the abstract class named Microsoft.Office.DocumentManagement.DocumentldProvider and then override all of the virtual members.
C. Create a derived class that inherits from the Microsoft.Office.DocumentManagement.DocumentldProvider abstract class and then implement all abstract members.
D. Create a class to implement the Microsoft.Office.DocumentManagement.IDocumentld interface and then override all of the virtual members.

Answer: B

QUESTION 3
You need to ensure that employees can change their display name.
Which object model should you use?

A. Use the server-side object model.
B. Use a Representational State Transfer (REST) based service.
C. Use the JavaScript object model.
D. Use the .Net client-side object model.

Answer: A


QUESTION 4
You need to search for research papers that contain media files.
What should you do? {Each correct answer presents part of the solution. Choose all that apply.)

A. Add an Association operation from the ResearchPapers.ID field to the Windows Media Service.
B. Use Remote BLOB storage.
C. Add an Association operation from the ResearchPapers.ID field to the TreyResearch external content type.
D. Create a SQL Server-based external content type.

Answer: B,D

Saturday 2 July 2016

Exam 70-487 Developing Microsoft Azure and Web Services

Published: October 17, 2012
Languages: English, Chinese (Simplified), French, German, Japanese, Portuguese (Brazil)
Audiences: Developers
Technology: Microsoft Visual Studio 2013, Microsoft Azure
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 and updates to Microsoft Azure.
Accessing data (20-25%)
Choose data access technologies
Choose a technology (ADO.NET, Entity Framework, WCF Data Services, Azure storage) based on application requirements
Implement caching
Cache static data, apply cache policy (including expirations); use CacheDependency to refresh cache data; query notifications
Implement transactions
Manage transactions by using the API from System.Transactions namespace; implement distributed transactions; specify transaction isolation level
Implement data storage in 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
Create and implement a WCF Data Services service
Address resources; implement filtering; create a query expression; access payload formats (including JSON); use data service interceptors and service operators
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

Preparation resources

Transaction isolation levels
WCF Data Services
XML documents and data
Querying and manipulating data by using Entity Framework (20-25%)
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
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)
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
Preparation resources
Entity Framework
Loading related entities
IQueryable<T> Interface
Designing and implementing WCF Services (15-20%)
Create a WCF service
Create contracts (service, data, message, callback, and fault); implement message inspectors; implement asynchronous operations in the service
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
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
Secure a WCF service
Implement message level security, implement transport level security; implement certificates; design and implement multiple authentication modes
Consume WCF services
Generate proxies by using SvcUtil; generate proxies by creating a service reference; create and implement channel factories
Version a WCF service
Version different types of contracts (message, service, data); configure address, binding, and routing service versioning
Create and configure a WCF service on 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
Implement messaging patterns
Implement one way, request/reply, streaming, and duplex communication; implement Azure Service Bus and Azure Queues
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
Preparation resources
Windows Communication Foundation Services and WCF Data Services in Visual Studio
<bindings>
Forward-Compatible data contracts
Creating and consuming Web API-based services (15-20%)
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
Preparation resources
Getting started with ASP.NET Web API 2 (C#)
Implementing Basic CRUD functionality with the Entity Framework in ASP.NET MVC application
Json class
Deploying web applications and services (15-20%)
Design a deployment strategy
Create an IIS install package; deploy to web farms; deploy a web application by using XCopy; automate a deployment from TFS or Build Server
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
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
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 resources
ASP.NET Web Deployment using Visual Studio: Introduction
How to: Create a Web Deployment Package in Visual Studio
Installing NuGet

QUESTION 1
You need to recommend a data access technology to the contractor to retrieve data from the new data source.
Which data access technology should you recommend?
A. LINQ to XML
B. ADO.NET Entity Framework
C. ADO.NET DataSets
D. WCF Data Services
Answer: D

QUESTION 2
You need to load flight information provided by Consolidated Messenger.
Which should you use?
A. SQL Server Data Transformation Services (DTS)
B. EntityTransaction and EntityCommand
C. Office Open XML
D. OleDbConnection and OleDbDataReader
Answer: D

QUESTION 3
Data provided by Consolidated Messenger is cached in the HttpContext.Cache object.
You need to ensure that the cache is correctly updated when new data arrives.
What should you do?
A. Ensure that the EffectivePrivateBytesLimit value is greater than the size of the database file.
B. Change the sliding expiration of the cache item to 12 hours.
C. Use the SqlCacheDependency type configured with a connection string to the database file.
D. Use the CacheDependency type configured to monitor the SFTP target folder.
Answer: D

QUESTION 4
Historical flight information data will be stored in Windows Azure Table Storage using the FlightInfo class as the table entity.
There are millions of entries in the table. Queries for historical flight information specify a set of airlines to search and whether the query should return only late flights. Results should be ordered by flight name.
You need to specify which properties of the FlightInfo class should be used at the partition and row keys to ensure that query results are returned as quickly as possible.
What should you do? (Each correct answer presents part of the solution. Choose all that apply.)
A. Use the WasLate property as the row key.
B. Use the Airline property as the row key.
C. Use the WasLate property as the partition key
D. Use the Arrival property as the row key.
E. Use the Airline property as the partition key.
F. Use the Flight property as the row key.
Answer: B,F

Exam 70-487 Developing Microsoft Azure and Web Services

Published: October 17, 2012
Languages: English, Chinese (Simplified), French, German, Japanese, Portuguese (Brazil)
Audiences: Developers
Technology: Microsoft Visual Studio 2013, Microsoft Azure
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 and updates to Microsoft Azure.
Accessing data (20-25%)
Choose data access technologies
Choose a technology (ADO.NET, Entity Framework, WCF Data Services, Azure storage) based on application requirements
Implement caching
Cache static data, apply cache policy (including expirations); use CacheDependency to refresh cache data; query notifications
Implement transactions
Manage transactions by using the API from System.Transactions namespace; implement distributed transactions; specify transaction isolation level
Implement data storage in 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
Create and implement a WCF Data Services service
Address resources; implement filtering; create a query expression; access payload formats (including JSON); use data service interceptors and service operators
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

Preparation resources

Transaction isolation levels
WCF Data Services
XML documents and data
Querying and manipulating data by using Entity Framework (20-25%)
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
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)
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
Preparation resources
Entity Framework
Loading related entities
IQueryable<T> Interface
Designing and implementing WCF Services (15-20%)
Create a WCF service
Create contracts (service, data, message, callback, and fault); implement message inspectors; implement asynchronous operations in the service
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
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
Secure a WCF service
Implement message level security, implement transport level security; implement certificates; design and implement multiple authentication modes
Consume WCF services
Generate proxies by using SvcUtil; generate proxies by creating a service reference; create and implement channel factories
Version a WCF service
Version different types of contracts (message, service, data); configure address, binding, and routing service versioning
Create and configure a WCF service on 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
Implement messaging patterns
Implement one way, request/reply, streaming, and duplex communication; implement Azure Service Bus and Azure Queues
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
Preparation resources
Windows Communication Foundation Services and WCF Data Services in Visual Studio
<bindings>
Forward-Compatible data contracts
Creating and consuming Web API-based services (15-20%)
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
Preparation resources
Getting started with ASP.NET Web API 2 (C#)
Implementing Basic CRUD functionality with the Entity Framework in ASP.NET MVC application
Json class
Deploying web applications and services (15-20%)
Design a deployment strategy
Create an IIS install package; deploy to web farms; deploy a web application by using XCopy; automate a deployment from TFS or Build Server
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
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
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 resources
ASP.NET Web Deployment using Visual Studio: Introduction
How to: Create a Web Deployment Package in Visual Studio
Installing NuGet

QUESTION 1
You need to recommend a data access technology to the contractor to retrieve data from the new data source.
Which data access technology should you recommend?
A. LINQ to XML
B. ADO.NET Entity Framework
C. ADO.NET DataSets
D. WCF Data Services
Answer: D

QUESTION 2
You need to load flight information provided by Consolidated Messenger.
Which should you use?
A. SQL Server Data Transformation Services (DTS)
B. EntityTransaction and EntityCommand
C. Office Open XML
D. OleDbConnection and OleDbDataReader
Answer: D

QUESTION 3
Data provided by Consolidated Messenger is cached in the HttpContext.Cache object.
You need to ensure that the cache is correctly updated when new data arrives.
What should you do?
A. Ensure that the EffectivePrivateBytesLimit value is greater than the size of the database file.
B. Change the sliding expiration of the cache item to 12 hours.
C. Use the SqlCacheDependency type configured with a connection string to the database file.
D. Use the CacheDependency type configured to monitor the SFTP target folder.
Answer: D

QUESTION 4
Historical flight information data will be stored in Windows Azure Table Storage using the FlightInfo class as the table entity.
There are millions of entries in the table. Queries for historical flight information specify a set of airlines to search and whether the query should return only late flights. Results should be ordered by flight name.
You need to specify which properties of the FlightInfo class should be used at the partition and row keys to ensure that query results are returned as quickly as possible.
What should you do? (Each correct answer presents part of the solution. Choose all that apply.)
A. Use the WasLate property as the row key.
B. Use the Airline property as the row key.
C. Use the WasLate property as the partition key
D. Use the Arrival property as the row key.
E. Use the Airline property as the partition key.
F. Use the Flight property as the row key.
Answer: B,F