Published: July 2, 2010
Languages: English
Audiences: Developers
Technology: Microsoft Visual Studio 2012
Credit toward certification: MCTS, MCPD

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.

Developing web forms pages (19%)
Configure web forms pages
Page directives such as ViewState, request validation, event validation, MasterPageFile; ClientIDMode; using web.config; setting the html doctype
This objective does not include: referencing a master page; adding a title to a web form
Implement master pages and themes
Creating and applying themes; adding multiple content placeholders; nested master pages; control skins; passing messages between master pages; switching between themes at runtime; loading themes at run time; applying a validation schema
This objective does not include: creating a master page; basic content pages
Implement globalization
Resource files, browser files, CurrentCulture, currentUICulture, ASP:Localize
Handle page life cycle events
IsPostback, IsValid, dynamically creating controls, control availability within the page life cycle, accessing control values on postback, overriding page events
Implement caching
Data caching; page output caching; control output caching; cache dependencies; setting cache lifetimes; substitution control
This objective does not include: distributed caching (Velocity)
Manage state
Server-side technologies, for example, session and application; client-side technologies, for example, cookies and ViewState; configuring session state (in proc, state server, Microsoft SQL Server; cookieless); session state compression; persisting data by using ViewState; compressing ViewState; moving ViewState

Preparation resources
ASP.NET web pages
ASP.NET page lifecycle overview
Caching in .NET Framework applications

Developing and using web forms controls (18%)

Validate user input
Client side, server side, and via AJAX; custom validation controls; regex validation; validation groups; datatype check; jQuery validation
This objective does not include: RangeValidator and RequiredValidator
Create page layout
AssociatedControlID; Web parts; navigation controls; FileUpload controls
This objective does not include: label; placeholder, panel controls; CSS, HTML, referencing CSS files, inlining
Implement user controls
a control; adding a user control; referencing a user control; dynamically loading a user control; custom event; custom properties; setting toolbox visibility
Implement server controls
Composite controls, INamingContainer, adding a server control to the toolbox, global assembly cache, creating a custom control event, globally registering from web.config; TypeConverters
This objective does not include: postback data handler, custom databound controls, templated control
Manipulate user interface controls from code-behind
HTML encoding to avoid cross-site scripting, navigating through and manipulating the control hierarchy; FindControl; controlRenderingCompatibilityVersion; URL encoding; RenderOuterTable
This objective does not include: visibility, text, enabled properties

Preparation resources
Walkthrough: Validating user input in a web forms page
ASP.NET user controls
ASP.NET web server controls overview

Implementing client-side scripting and AJAX (16%)
Add dynamic features to a page by using JavaScript
Referencing client ID; script manager; script combining; Page.clientscript.registerclientscriptblock; Page.clientscript.registerclientscriptinclude; sys.require (scriptloader)
This objective does not include: interacting with the server; referencing JavaScript files; inlining JavaScript
Alter a page dynamically by manipulating the DOM
Using jQuery, adding, modifying, or removing page elements, adding effects, jQuery selectors
This objective does not include: AJAX
Handle JavaScript events
DOM events, custom events, handling events by using jQuery
Implement ASP.NET AJAX
Client-side templating, creating a script service, extenders (ASP.NET AJAX control toolkit), interacting with the server, Microsoft AJAX client library, custom extenders; multiple update panels; triggers; UpdatePanel.UpdateMode; timer
This objective does not include: basic update panel and progress
Implement AJAX by using jQuery
$.get, $.post, $.getJSON, $.ajax, xml, html, JavaScript Object Notation (JSON), handling return types
This objective does not include: creating a service

Preparation resources
Client script in ASP.NET web pages
Walkthrough: Creating an Ajax-enabled web site
Creating custom client events

Configuring and extending a web application (15%)
Configure authentication and authorization
Using membership, using login controls, roles, location element, protecting an area of a site or a page
This objective does not include: Windows Live; Microsoft Passport; Windows and forms authentication
Configure providers
Role, membership, personalization, aspnet_regsql.exe
This objective does not include: creating custom providers
Create and configure HttpHandlers and HttpModules
Generic handlers, asynchronous handlers, setting MIME types and other content headers, wiring modules to application events
Configure initialization and error handling
Handling Application_Start, Session_Start, and Application_BeginRequest in global.asax, capturing unhandled exceptions, custom error section of web.config, redirecting to an error page; try and catch; creating custom exceptions
Reference and configure ASMX and WCF services
Adding service reference, adding web reference, changing endpoints, wsdl.exe, svcutil.exe; updating service URL; shared WCF contracts assembly
This objective does not include: creating WCF and ASMX services
Configure projects and solutions, and reference assemblies
Local assemblies, shared assemblies (global assembly cache), web application projects, solutions, settings file, configuring a web application by using web.config or multiple .config files; assemblyinfo
Debug a web application
Remote, local, JavaScript debugging, attaching to process, logging and tracing, using local IIS, aspnet_regiis.exe
Deploy a web application
Pre-compilation, publishing methods (e.g., MSDeploy, xcopy, and FTP), deploying an MVC application
This objective does not include: application pools, IIS configuration

Preparation resources
ASP.NET authentication
HTTP handlers and HTTP modules overview
ASP.NET debugging overview

Displaying and manipulating data (19%)
Implement data-bound controls
Advanced customization of DataList, Repeater, ListView, FormsView, DetailsView, TreeView, DataPager, Chart, GridView
This objective does not include: working in design mode
Implement DataSource controls
ObjectDataSource, LinqDataSource, XmlDataSource, SqlDataSource, QueryExtender, EntityDataSource
This objective does not include: AccessDataSource, SiteMapDataSource
Query and manipulate data by using LINQ
Transforming data by using LINQ to create XML or JSON, LINQ to SQL, LINQ to entities, LINQ to objects, managing DataContext lifetime
This objective does not include: basic LINQ to SQL
Create and consume a data service
WCF, web service; server to server calls; JSON serialization, XML serialization
This objective does not include: client side, ADO.NET data services
Create and configure a dynamic data project
Dynamic data controls, custom field templates; connecting to DataContext and ObjectContext

Preparation resources
ASP.NET data-bound web server controls overview
Data source controls overview
Walkthrough: Manipulating data (Visual Basic) (LINQ to SQL)

Developing a web application by using ASP.NET MVC 2 (13%)
Create custom routes
Route constraints, route defaults, ignore routes, custom route parameters
Create controllers and actions
Visual Studio support for right-click context menus; action filters (including Authorize, AcceptVerbs, and custom) and model binders; ActionResult sub-classes
Structure an ASP.NET MVC application
Single project areas (for example, route registration, Visual Studio tooling, and inter-area links); organizing controllers into areas; shared views; content files and folders
Create and customize views
Built-in and custom HTML helpers (for example, HTML.RenderAction and HTML.RenderPartial), strongly typed views, static page checking, templated input helpers, ViewMasterPage, ViewUserControl
This objective does not include: Microsoft.Web.Mvc futures assembly

Preparation resources
Controllers and action methods in ASP.NET MVC applications
Developer Review – Four ASP.NET MVC view engines

(“lblRegion”) lblRegion.Text = Me.Region

Answer: B


You have created an ASP.NET server control named ShoppingCart for use by other developers. Some developers report that the ShoppingCart control does not function properly with ViewState disabled. You want to ensure that all instances of the ShoppingCart control work even if ViewState is disabled. What should you do?

A. Require developers to set EnableViewStateMac to true.
B. Store state in ControlState instead of ViewState.
C. Serialize the state into an Application state entry called “MyControl”.
D. Require developers to change the session state mode to SQLServer.

Answer: B

You are implementing an ASP.NET Web site that will be accessed by an international audience. The site contains global and local resources for display elements that must be translated into the language that is selected by the user. You need to ensure that the Label control named lblCompany displays text in the users selected language from the global resource file. Which control markup should you use?

A. <asp:Label ID=”lblCompany” runat=”server” meta:resourcekey=”lblCompany” />
B. <asp:Label ID=”lblCompany” runat=”server” Text=”meta:lblCompany.Text” />
C. <asp:Label ID=”lblCompany” runat=”server” Text=”<%$ Resources:lblCompanyText %>” />
D. <asp:Label ID=”lblCompany” runat=”server”
Text=”<%$ Resources:WebResources, lblCompanyText %>” />

Answer: D

You are developing an ASP.NET Web page that contains input controls, validation controls, and a button named btnSubmit.
The page has the following code-behind. (Line numbers are included for reference only.)
01 Public Class _Default
02 Inherits System.Web.UI.Page
04 Protected Sub SaveToDatabase()
06 End Sub
08 Protected Sub btnSubmit_Click(ByVal sender As Object,
09 ByVal e As EventArgs) Handles btnSubmit.Click
11 End Sub
13 End Class
You need to ensure that all data that is submitted passes validation before the data is saved in a database. What should you do?

A. Add the following method override.
Protected Overrides Sub OnInit(ByVal e As EventArgs)
If (Page.IsValid) Then Me.SaveToDatabase()
End Sub
B. Add the following method override.
Protected Overrides Sub OnLoad(ByVal e As EventArgs)
If (Page.IsValid) Then Me.SaveToDatabase()
End Sub
C. Add the following method override.
Protected Overrides Sub OnPreRender(ByVal e As EventArgs)
If (Page.IsValid) Then Me.SaveToDatabase()
End Sub
D. Add the following code segment at line 10.
If (Page.IsValid) Then Me.SaveToDatabase()

Answer: D

You are implementing an ASP.NET application that uses data-bound GridView controls in multiple pages. You add JavaScript code to periodically update specific types of data items in these GridView controls. You need to ensure that the JavaScript code can locate the HTML elements created for each row in these GridView controls, without needing to be changed if the controls are moved from one page to another. What should you do?

A. Replace the GridView control with a ListView control.
B. Set the ClientIDMode attribute to Predictable in the web.config file.
C. Set the ClientIDRowSuffix attribute of each unique GridView control to a different value.
D. Set the @ OutputCache directives VaryByControl attribute to the ID of the GridView control.

Answer: C

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

MCTS Training, MCITP Trainnig

Best Microsoft MCTS Certification, Microsoft 70-515 Training at