MOC 20488B: Developing Microsoft SharePoint Server 2013 Core Solutions
Course Overview
This course provides students with the knowledge and skills to work with the server-side and
client-side object models, develop and deploy features, solutions, and apps, manage identity and
permissions, query and update list data, manage taxonomy, use workflow to manage business
processes, and customize the user interface.
Course Introduction 3m Course Introduction
Module 01 - SharePoint as a Developer Platform 1h 1m
Lesson 1: Introducing the SharePoint Developer Landscape SharePoint Server 2013 Workloads
Developer Tools for SharePoint Server 2013 What's New for Developers in SharePoint 2013 The SharePoint 2013 Technology Stack The SharePoint Page Rendering Process Discussion: Page Rendering in SharePoint Entry Points for Developers in SharePoint 2013 Demo - Developer Tools for SharePoint 2013
Troubleshooting and Debugging SharePoint Solutions Lesson 2: Choosing Approaches to SharePoint Development Declarative Components
Client-Side Code Web Parts Application Pages Timer Jobs Event Receivers Workflow
Discussion: Choosing a Suitable Development Approach
Lesson 3: Understanding SharePoint 2013 Deployment and Execution Models SharePoint Features
Farm Solutions Sandboxed Solutions Apps for SharePoint Module 01 Review
Module 02 - Working with SharePoint Objects 45m
Lesson 1: Understanding the SharePoint Object Hierarchy The SharePoint Object Hierarchy
The SPFarm Class Working with Services
Working with Service Applications
Discussion: Understanding the Service Application Architecture Working with Web Applications
Site Collections and the SPSite Class Individual Sites and the SPWeb Class Lesson 2: Working with Sites and Webs Managing Object Life Cycles
Retrieving and Updating Properties Demo - Updating Properties
Creating and Deleting Sites and Webs Lesson 3: Working with Execution Contexts Understanding the SharePoint Context Working with Users and Permissions
Discussion: Adapting Content for Different User Permissions Manipulating the Execution Context
Module 02 Review
Module 03 - Working with Lists and Libraries 1h 8m
Lesson 1: Using List and Library Objects
Understanding the List and Library Class Hierarchy Retrieving List and Library Objects
Creating and Deleting List and Library Objects Working with List Items
Demo - Creating List Items Working with Fields Working with Files
Lesson 2: Querying and Retrieving List Data Approaches to Querying List Data
Discussion: Retrieving List Data in Code Building CAML Queries
Using the SPQuery Class Using the SPSiteDataQuery Class Using LINQ to SharePoint
Using SPMetal to Generate Entity Classes
Demo - Generating Entity Classes in Visual Studio 2012 Lesson 3: Working with Large Lists
Understanding List Performance Management Overriding List View Thresholds
Using the ContentIterator Class Module 03 Review
Module 04 - Designing and Managing Features and Solutions 1h 20m
Lesson 1: Understanding Features and Solutions Understanding Features
Anatomy of a Feature
Understanding Feature Scopes Demo - Exploring a Feature Understanding Solutions Anatomy of a Solution Demo - Exploring a Solution
Lesson 2: Configuring Features and Solutions Planning and Configuring Feature Dependencies Creating Solution Activation Dependencies Demo - Using the Visual Studio Designer Managing Feature Upgrades
Managing Solution Upgrades
Administering Features and Solutions Creating Feature Receivers
Discussion: Using Feature Receivers
Lesson 3: Working with Sandboxed Solutions Understanding Sandboxed Solutions
Capabilities and Constraints
Managing the Sandboxed Solution Life Cycle
Creating and Installing Solution Validators
Discussion: When Are Sandboxed Solutions Appropriate?
Module 04 Review
Module 05 - Working with Server-Side Code 55m
Lesson 1: Developing Web Parts Introduction to Web Parts
Understanding the Web Part Life Cycle Visual Web Parts
Demo - Creating a Visual Web Part The .webpart File
Lesson 2: Using Event Receivers Introduction to Event Receivers Developing an Event Receiver Deploying an Event Receiver Discussion Question
Lesson 3: Using Timer Jobs Introduction to Timer Jobs Developing a Timer Job Deploying a Timer Job
Demo - Examining Timer Job Schedules Work Item Timer Jobs
Developing a Work Item Timer Job Lesson 4: Storing Configuration Data Configuration Storage Options Using Property Bags
Manipulating Web.config Files Storing Hierarchical Data Discussion Question Module 05 Review
Module 06 - Managing Identity and Permissions 59m
Lesson 1: Understanding Identity Management in SharePoint 2013 Authentication in SharePoint
Authentication Types and Methods Windows Authentication
Forms-Based Authentication SAML Authentication
How SharePoint Represents Users Impersonation
Discussion: Scenarios for Impersonation
Lesson 2: Managing Permissions in SharePoint 2013 Permissions Classes
Checking Permissions Assigning Permissions Managing Access to Resources
Lesson 3: Configuring Forms-Based Authentication Forms-Based Authentication Overview
Creating Custom Membership Providers Creating Custom Role Providers Registering Providers
Creating a Custom Login Page
Discussion: Federation and Custom Provider Scenarios Lesson 4: Customizing the Authentication Experience What is a Claims Provider?
Creating a Claims Provider
Deploying a Claims Provider Demo - Custom Claims Provider Module 06 Review
Module 07 - Introducing Apps for SharePoint 43m
Lesson 1: Overview of Apps for SharePoint What is a SharePoint App?
Hosting Apps for SharePoint
Autohosted and Provider Hosted Apps Developer Tools and Technologies Host Webs, App Webs, and Remote Webs App Entry Points
Data Storage and Access Packaging and Publishing Apps Discussion – Choosing Technologies Lesson 2: Developing Apps for SharePoint Communicating with SharePoint
Visual Studio Templates for Apps for SharePoint
Demo - How to Create a SharePoint App from a Visual Studio Template Cross Domain Calls
Licenses for Apps for SharePoint Module 07 Review
Module 08 - Client-Side SharePoint Development 45m
Lesson 1: Using the Client-Side Object Model for Managed Code Overview of the Managed CSOM
Using Client Context, Loading Objects, Executing Queries Reading SharePoint Data
Changing SharePoint Data Handling Server-Side Errors
Lesson 2: Using the Client-Side Object Model for JavaScript Overview of the CSOM for JavaScript
Using the Client Context Object Loading Objects and Running Queries Demo - How to Use load and loadQuery Reading SharePoint Data
Changing SharePoint Data Handling Server-Side Errors
Lesson 3: Using the REST API with JavaScript Overview of the REST API
SharePoint REST API URLs Reading Data
Creating and Updating Data Module 08 Review
Module 09 - Developing Remote-hosted Apps for SharePoint 39m
Lesson 1: Overview of Remote-Hosted Apps Introducing Remote-Hosted Apps
Authentication Mechanisms Provider-Hosted Apps Auto-hosted Apps
Discussion - Choosing an App-Hosting Model Lesson 2: Configuring Remote-Hosted Apps Configuring Auto-Hosted App Authentication Configuring Provider-Hosted App Authentication
Demo - Configuring an S2S Trust Requesting App Permissions
Lesson 3: Developing Remote-Hosted Apps Choosing Technologies
Coding Security Requirements The Chrome Control
Module 09 Review
Module 10 - Publishing and Distributing Apps 31m
Lesson 1: Understanding the App Management Architecture Service Applications for App Management
Publishing Locations
Lesson 2: Understanding App Packages App Package Format
Packages for Remote-Hosted Apps Demo - Exploring an App Package Lesson 3: Publishing Apps The Publishing Wizard Publishing to the Office Store Publishing to an App Catalog
Lesson 4: Installing, Updating, and Uninstalling Apps App Installation
Updating an App Uninstalling Apps Module 10 Review
Module 11 - Automating Business Processes 44m
Lesson 1: Understanding Workflow in SharePoint 2013 Introduction to the SharePoint Workflow Platform Workflow Associations and Subscriptions
Types of Workflow Workflow Development
Discussion: Choosing a Suitable Development Approach
Lesson 2: Building Workflows by using Visio 2013 and SharePoint Designer 2013 Creating Workflows by Using Visio
Creating and Editing Workflows in SharePoint Designer Publishing Workflows to a Live Site
Using Workflows
Demo - Creating Workflows in SharePoint Designer Packaging and Deploying SharePoint Designer Workflows Lesson 3: Developing Workflows in Visual Studio 2012 Introduction to Visual Studio Workflows
Adding a Workflow Custom Activity to a Project Creating the Workflow Logic
Creating the actions4 File
Deploying and Publishing a Workflow Activity Module 11 Review
Module 12 - Managing Taxonomy 1h 13m
Lesson 1: Managing Taxonomy in SharePoint 2013 Understanding Taxonomy in SharePoint
Creating Site Columns Declaratively Creating Site Columns Programmatically Creating Site Columns in Server-Side Code Creating Site Columns in JavaScript
Retrieving and Editing Site Columns
Retrieving and Editing Site Columns in Server-Side Code Retrieving and Editing Site Columns in Client-Side Code Working with Lookup Fields
Discussion: Using Lookup Fields Lesson 2: Working with Content Types Creating Content Types Declaratively Understanding Content Type IDs
Demo - Using the Visual Studio 2012 Content Type Designer Working with Content Types in Code
Creating Content Types in Server-Side Code Creating Content Types in JavaScript Adding Content Types to Lists
Lesson 3: Working with Advanced Features of Content Types Managing Document Templates
Configuring Workflow Associations
Creating Workflow Associations in Server-Side Code Creating Workflow Associations in Client-Side Code Associating Event Receivers with Content Types Adding Event Receivers Declaratively
Adding Event Receivers Programmatically Module 12 Review
Module 13 - Managing Custom Components and Site Life Cycles 41m
Lesson 1: Defining Custom Lists Introduction to List Definitions Developing List Definitions The Visual Studio List Designer Discussion Question
Provisioning Lists
Lesson 2: Defining Custom Sites
Introduction to Site Definitions and Web Templates Developing a Site Definition Declaratively
Deploying Site Definitions
Using Code to Provision a Custom Site
Demo - Examining the Standard Site Definitions Feature Stapling
Discussion Question
Lesson 3: Managing SharePoint Sites Understanding the Site Hierarchy Provisioning Sites
Host-named Site Collections Backing-up Site Collections Managing the Site Life Cycle Upgrading SharePoint 2010 Sites Module 13 Review
Module 14 - Customizing User Interface Elements 1h 9m
Lesson 1: Working with Custom Actions Introduction to Custom Actions
Using the CustomAction Element Customizing the Ribbon
Demo - Customizing the Ribbon Customizing Other SharePoint Objects Using the Custom Action Templates Deploying Custom Actions
Lesson 2: Using Client-Side User Interface Components Displaying Status Bar Messages
Demo - Displaying Status Bar Messages Displaying Notifications
Demo - Displaying Notifications Using SharePoint Dialog Boxes Displaying Callouts
SPAnimation Library Using Focus on Content
Lesson 3: Customizing the SharePoint List User Interface Introduction to Client-Side Rendering
Using Client-Side Rendering to Customize the Default List View Using Client-Side Rendering to Create Custom Views
Using Client-Side Rendering to Customize List Forms
Using Client-Side Rendering to Apply Conditional Formatting Demo - Applying Conditional Formatting
Using jQuery UI In Client-Side Rendering Code Module 14 Review
Module 15 - Working with Branding and Navigation 1h 40m
Lesson 1: Creating and Applying Themes The SharePoint 2013 Theme Model Demo - Building a Composed Look Creating Custom Color Palettes Creating Custom Font Schemes Deploying Custom Themes
Deploying and Applying Custom Themes Programmatically Lesson 2: Branding and Designing Publishing Sites
The Publishing Site Page Model
Design Manager and the Site Design Process Creating Master Pages
Demo - Developing Master Pages with Design Manager Creating Page Layouts
Demo - Developing Page Layouts with Design Manager Importing and Exporting Design Packages
Lesson 3: Tailoring Content to Platforms and Devices Understanding Device Channels
Demo - Creating and Configuring a Device Channel Using Device Channel Panels
Understanding Image Renditions
Demo - Creating and Configuring an Image Rendition Lesson 4: Configuring and Customizing Navigation Navigation in SharePoint Server 2013
Understanding the SharePoint Navigation Architecture SharePoint 2013 Site Map Providers
Understanding Managed Navigation Configuring Navigation Programmatically
Configuring a Site to Use Structural or Managed Navigation Customizing the Navigation Experience
Module 15 Review Course Closure