Download PDF
of this course

MS20488 - Developing Microsoft SharePoint® Server 2013 Core Solutions (MS20488)

  • Overview
  • Who Should Attend
  • Certifications
  • Prerequisites
  • Objectives
  • Content
  • Schedule
Course Overview

Duration: 5 Days

In this course, students learn core skills that are common to almost all SharePoint development activities. These include working with the server-side and client-side object models, developing and deploying features, solutions, and apps, managing identity and permissions, querying and updating list data, managing taxonomy, using workflow to manage business processes, and customizing the user interface.

Who Should Attend

The course is intended for professional developers who develop solutions for SharePoint products and technologies in a team-based, medium-sized to large development environment. While some familiarity with SharePoint solution development is required, candidates are not expected to have prior experience with the new features in SharePoint Server 2013.

The ideal candidate is a technical lead with at least four years of SharePoint and web development experience. The candidate is responsible for designing custom code for projects that are deployed to or interact with SharePoint environments. This includes:


  • Selecting an appropriate approach and building customizations in SharePoint.

  • Creating and implementing a strategy for solution packaging, deployment, and upgrading.

  • Identifying SharePoint data and content structures for customizations.

  • Performing diagnostics and debugging.

  • Planning and designing applications for scalability and performance.

  • Identifying and mitigating performance issues of customizations.

  • Understanding authentication and authorization.

  • Experience with Windows PowerShell.

  • Broad familiarity with SharePoint capabilities.

  • Familiarity with Online Services such as Azure and SharePoint Online.

Course Certifications

This course is part of the following Certifications:


Before attending this course, students must have:


  • A working knowledge of using Visual Studio 2010 or Visual Studio 2012 to develop solutions.
  • A basic working knowledge of SharePoint solution development, either in SharePoint 2013 or in earlier versions of SharePoint.
  • A working knowledge of Visual C# and the .NET Framework 4.5.
  • A basic understanding of ASP.NET and server-side web development technologies, including request/response and the page lifecycle.
  • A basic understanding of AJAX and asynchronous programming techniques.
  • A basic working knowledge of client-side web technologies including HTML, CSS, and JavaScript.
  • Familiarity with approaches to authentication and authorization, including claims-based authentication.


Course Objectives

After completing this course, students will be able to:
  • Design and manage features and solutions.
  • Develop code for custom server-side components.
  • Manage and customize authentication and authorization.
  • Create custom sites and lists and manage the site lifecycle.
  • Explain the capabilities and design choices for SharePoint apps.
  • Use the client-side object model and the REST API.
  • Develop provider-hosted and auto-hosted SharePoint apps.
  • Distribute and deploy SharePoint apps.
  • Create custom workflows to automate business processes.
  • Use fields and content types to manage taxonomy.
  • Customize the appearance and behavior of user interface elements.
  • Customize navigation and site branding.

Course Content

Module 1: SharePoint as a Developer Platform

This module examines different approaches that can be used to develop applications with SharePoint Server 2013 the scenarios in which each approach might be appropriate.


  • Introducing the SharePoint Developer Landscape
  • Choosing Approaches to SharePoint Development
  • Understanding SharePoint 2013 Deployment and Execution Models

Lab : Comparing Web Parts and App Parts

After completing this module, students will be able to:
  • Describe the opportunities for developers in SharePoint Server 2013.
  • Choose appropriate execution models for custom SharePoint components.
  • Choose appropriate deployment models for custom SharePoint components.

Module 2: Working with SharePoint Objects

This module introduces the server-side SharePoint object model and how the core classes relate to sites and collections. The server-side SharePoint object model provides a core set of classes that represent different items in the logical architecture of a SharePoint deployment. Students also learn how manage permissions for server-side code.


  • Understanding the SharePoint Object Hierarchy
  • Working with Sites and Webs
  • Working with Execution Contexts

Lab : Working with Sites and WebsLab : Working with Execution Contexts

After completing this module, students will be able to:
  • Explain the purpose of key classes in the server-side SharePoint object model.
  • Programmatically interact with SharePoint site collections and sites.
  • Adapt solutions for users with different levels of permissions.

Module 3: Working with Lists and Libraries

This module explains how to interact with lists and libraries. Students learn about how to work with lists and libraries programmatically using the server-side SharePoint object model and how to use query classes and LINQ to SharePoint to query and retrieve data from SharePoint lists. Student also learn how to efficiently work with lists that contain large numbers of items.


  • Using List and Library Objects
  • Querying and Retrieving List Data
  • Working with Large Lists

Lab : Querying and Retrieving List DataLab : Working with Large Lists

After completing this module, students will be able to:
  • Interact with lists and libraries programmatically.
  • Query and retrieve list data.
  • Perform operations efficiently on large lists.

Module 4: Designing and Managing Features and Solutions

This module examines creating and deploying custom Developing a SharePoint solutions and features. The students also learn how and when to use sandbox solutions.


  • Understanding Features and Solutions
  • Configuring Features and Solutions
  • Working with Sandboxed Solutions

Lab : Working with Features and Solutions

After completing this module, students will be able to:
  • Explain the purpose and key functionality of Features and solutions.
  • Configure and manage Features and solutions.
  • Create and manage sandboxed solutions.

Module 5: Working with Server-Side Code

This module describes how to develop and deploy Web Parts and event receivers in a solution.


  • Developing Web Parts
  • Using Event Receivers
  • Using Timer Jobs
  • Storing Configuration Data

Lab : Working with Server-Side Code

After completing this module, students will be able to:
  • Describe the process for developing a web part.
  • Use event receivers to handle SharePoint events.
  • Use timer jobs to perform out of process, and scheduled operations.
  • Store and manipulate configuration data for custom components.

Module 6: Managing Identity and PermissionsThis module describes how manage permissions through code and customize authentication using custom claims providers.Lessons

  • Understanding Identity Management in SharePoint 2013
  • Managing Permissions in SharePoint 2013
  • Configuring Forms-Based Authentication
  • Customizing the Authentication Experience

Lab : Managing Permissions Programmatically in SharePoint 2013Lab : Creating and Deploying a Custom Claims Provider

After completing this module, students will be able to:
  • Describe how authentication and identity management work in SharePoint 2013.
  • Verify and manage permissions programmatically in SharePoint 2013.
  • Create and configure custom membership providers and role managers for forms-based authentication.
  • Create claims providers and customize the sign-in experience.

Module 7: Introducing Apps for SharePoint

This module introduces the SharePoint App, a new way to customize SharePoint functionality with SharePoint Server 2013. 


  • Overview of Apps for SharePoint
  • Developing Apps for SharePoint

Lab : Creating a Site Suggestions App

After completing this module, students will be able to:
  • Describe SharePoint apps and compare them to SharePoint farm solutions and sandboxed solutions.
  • Describe how to develop apps for SharePoint 2013 that work on-premises and in the cloud.

Module 8: Client-Side SharePoint Development

This module describes how to use JavaScript Client Object Model (CSOM), managed code CSOM and the REST API to build SharePoint Apps. 


  • Using the Client-Side Object Model for Managed Code
  • Using the Client-Side Object Model for JavaScript
  • Using the REST API with JavaScript

Lab : Using the Client-Side Object Model for Managed CodeLab : Using the REST API with JavaScript

After completing this module, students will be able to:
  • Use the client-side object model for managed code to interact with a SharePoint deployment.
  • Use the client-side object model for JavaScript to interact with a SharePoint deployment.
  • Use the REST API with JavaScript or C# to interact with a SharePoint deployment.

Module 9: Developing Remote Hosted SharePoint AppsThis module examines the difference between provider hosted Apps and Remote Hosted Apps. The students will also create and deploy a Provider Hosted App. Lessons

  • Overview of Remote Hosted Apps

Course ID: MS20488

Show Schedule for 1 Month  3 Months  All 
Date Country Location Register