Welcome to ONLC Training Centers

Developing Microsoft SharePoint Server 2013 Core Solutions - 20488 Course Outline

 (5 days)
Version 2013

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.

*** NOTE: This class also available in On-Demand, eLearning Format ***
Too busy at work to miss 5 days out of the office to take this class? Consider the MOC On-Demand version of this course. Watch videos developed by Microsoft, take the same hands-on labs, access an online expert 24/7, and study at on your own time, at your own pace. For details on this alternative format, go to
MOC On-Demand 20488: Developing Microsoft SharePoint Server 2013 Core Solutions

Audience Profile
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.

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.

At Course Completion
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 Outline

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
Creating and Deploying a SharePoint Web Part
Creating and Deploying a SharePoint App Part

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 Webs
Working with Sites and Webs in Managed Code
Working with Sites and Webs in Windows PowerShell.
Lab : Working with Execution Contexts
Running Code with Elevated Privileges
Adapting Content for Different User 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 Data
Querying List Items
Updating List Items
Lab : Working with Large Lists
Using the ContentIterator Class

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.
Working with Features
Deploying Solutions
Working with Sandboxed Solutions
Lab : Working with Farm Solutions
Create a Farm Solution
Create a Feature
Upgrade a Solution
Lab : Working with Sandboxed Solutions
Create a Solution Validator

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
Developing an Event Receiver
Updating a Web Part
Creating a Timer Job

Module 6: Managing Identity and Permissions
This module describes how manage permissions through code and customize authentication using custom claims providers.
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 2013
Managing List Permissions Programmatically
Lab : Creating and Deploying a Custom Claims Provider
Creating a Custom Claims Provider
Supporting Search and Resolve in a Claims Provider
Deploying and Testing a Claims Provider

Module 7: Managing Custom Components and Site Lifecycles
This module discusses planning and organizing sites and lists. The students also learn how to create custom component definitions and templates.
Component Overview
Defining Custom Lists
Defining Custom Sites
Managing SharePoint Sites
Lab : Managing Custom Components and Site Lifecycles
Creating a Site Definition
Creating a List Definition
Developing an Event Receiver

Module 8: 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
Creating a New SharePoint App
Using the Client-Side Object Model

Module 9: 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 JavaScript
Using the REST API with JavaScript
Lab : Using the REST API with JavaScript
Creating List Relationships
Add Vote Recording
Display Votes for Each Suggestion

Module 10: Developing Remote Hosted SharePoint Apps
This module examines the difference between provider hosted Apps and Remote Hosted Apps. The students will also create and deploy a Provider Hosted App.
Overview of Remote Hosted Apps
Configuring Remote Hosted Apps
Developing Remote Hosted Apps
Lab : Configuring a Provider Hosted SharePoint App
Configuring An Server to Server Trust Relationship
Creating a Provider Hosted App
Lab : Developing a Provider Hosted SharePoint App
Working with SharePoint Data
Using the Chrome Control

Module 11: Publishing and Distributing Apps
This module introduces the App Catalog so users to locate, purchase, and install apps easily. The students learn how to package and publish Apps to the App Catalog.
Understanding the App Management Architecture
Understanding App Packages
Publishing Apps
Installing, Updating, and Uninstalling Apps
Lab : Publishing an App to a Corporate Catalog
Creating an App Catalog
Creating an App Package
Publishing an App Package
Lab : Installing, Updating, and Uninstalling Apps
Installing an App
Upgrading an App
Removing an App

Module 12: Automating Business Processes
This module explains how to create workflows and workflow actions using Visio 2013, SharePoint Designer 2013 and Visual Studio 2012.
Understanding Workflow in SharePoint 2013
Building Workflows by using Visio 2013 and SharePoint Designer 2013
Developing Workflows in Visual Studio 2012
Lab : Building Workflows in Visio 2013 and SharePoint Designer 2013
Creating Workflows by Using Visio
Editing Workflows by Using SharePoint Designer
Lab : Creating Workflow Actions in Visual Studio 2012
Creating Custom Workflow Actions
Using a Custom Workflow in SharePoint Designer

Module 13: Managing Taxonomy
This module explains the importance of a good taxonomy in SharePoint and working with the components of the taxonomy. The students also see how to tie event receivers to the taxonomy.
Managing Taxonomy in SharePoint 2013
Working with Content Types
Working with Advanced Features of Content Types
Lab : Working with Content Types
Create a System to Capture Vacation Requests
Lab : Working with Advanced Features of Content Types
Creating an Event Receiver Assembly
Registering an Event Receiver with a Site Content Type

Module 14: Customizing User Interface Elements
This module explains different ways of customizing the SharePoint user interface, such as adding buttons to the ribbon or modifying the appearance of list views.
Working with Custom Actions
Using Client-Side User Interface Components
Customizing the SharePoint List User Interface
Lab : Using the Edit Control Block to Launch an App
Configuring an App to Display Customer Orders
Use a Custom Action to Launch an App
Lab : Using jQuery to Customize the SharePoint List User Interface
Creating a Custom List View

Module 15: Working with Branding and Navigation
This module explains the changes in SharePoint Server 2013 to branding, designing, publishing and navigating sites. The students also learn how to create devise independent sites standard web technologies, such as HTML, CSS, and JavaScript.
Creating and Applying Themes
Branding and Designing Publishing Sites
Tailoring Content to Platforms and Devices
Configuring and Customizing Navigation
Lab : Branding and Designing Publishing Sites
Creating SharePoint Master Pages
Building Master Page Functionality
Publishing and Applying Design Assets
Lab : Configuring Farm-Wide Navigation
Creating a Custom Site Map Provider
View outline in Word


Attend hands-on, instructor-led Developing Microsoft SharePoint Server 2013 Core Solutions - 20488 training classes at ONLC's more than 300 locations. Not near one of our locations? Attend these same live classes from your home/office PC via our Remote Classroom Instruction (RCI) technology.

For additional training options, check out our list of SharePoint 2013 Courses and select the one that's right for you.

Microsoft Gold Partner
Need a price quote?

Follow the link to our self-service price quote form to generate an email with a price quote.

Email Alert

Receive an email when this class is available as "Ready to Run" or "Early Notice" status.

Attend from your office or home

If you have high-speed internet and two computers you can likely take this class from your office or home.

Need a class for a group?

We can deliver this class for a private group at your location. Follow the link to request more information.

Attend computer classes from ONLC Training Centers Request a copy via mail


Class Format
Class Policies
Student Reviews

Bookmark and Share

First Name

Last Name