Thorough coverage of SharePoint 2013 development

Completely updated for SharePoint 2013 and authored by some of the most recognized SharePoint developers in the field, this comprehensive book provides you with in-depth coverage of all aspects of SharePoint 2013 development. You'll explore the essential development tools of this latest iteration of SharePoint as the authors guide you through everything from ...

See more details below
Professional SharePoint 2013 Development

Available on NOOK devices and apps  
  • NOOK Devices
  • Samsung Galaxy Tab 4 NOOK
  • NOOK HD/HD+ Tablet
  • NOOK
  • NOOK Color
  • NOOK Tablet
  • Tablet/Phone
  • NOOK for Windows 8 Tablet
  • NOOK for iOS
  • NOOK for Android
  • NOOK Kids for iPad
  • PC/Mac
  • NOOK for Windows 8
  • NOOK for PC
  • NOOK for Mac
  • NOOK for Web

Want a NOOK? Explore Now

NOOK Book (eBook)
BN.com price
(Save 43%)$49.99 List Price
Note: This NOOK Book can be purchased in bulk. Please email us for more information.


Thorough coverage of SharePoint 2013 development

Completely updated for SharePoint 2013 and authored by some of the most recognized SharePoint developers in the field, this comprehensive book provides you with in-depth coverage of all aspects of SharePoint 2013 development. You'll explore the essential development tools of this latest iteration of SharePoint as the authors guide you through everything from building solutions to building custom workflow.

Professional SharePoint 2013 Development:

  • Covers developing applications in SharePoint 2013 using Windows Azure™ or Access
  • Zeroes in on building search-driven applications in SharePoint 2013
  • Features coverage of the application life cycle management in SharePoint 2013
  • Addresses web content management, electronic forms, enterprise document management, and PerformancePoint dashboards
  • Details how to integrate Reporting Services 2012 with SharePoint 2013


Programmer Forums

Join our Programmer to Programmer forums to ask and answer programming questions about this book, join discussions on the hottest topics in the industry, and connect with fellow programmers from around the world.

Code Downloads

Take advantage of free code samples from this book, as well as code samples from hundreds of other books, all ready to use.

Read More

Find articles, e-books, sample chapters, and tables of contents for hundreds of books, and more reference resources on programming topics that matter to you.

Read More Show Less

Product Details

  • ISBN-13: 9781118654965
  • Publisher: Wiley
  • Publication date: 2/22/2013
  • Sold by: Barnes & Noble
  • Format: eBook
  • Edition number: 1
  • Pages: 816
  • Sales rank: 384,486
  • File size: 41 MB
  • Note: This product may take a few minutes to download.

Meet the Author

Reza Alirezaei is the founder and president of Development Horizon, an author of several books, papers and online articles, and a SharePoint MVP.

Brendon Schwartz is a Microsoft MVP for both ASP.NET and SharePoint and has authored numerous articles and books.

Matt Ranlett is a SharePoint Server MVP and a solution architect and consulting practice lead at Slalom Consulting. He speaks regularly and has authored many books.

Scot Hillier is an independent consultant and Microsoft MVP for SharePoint. He is a regular speaker, trainer, and has authored 18 books.

Brian Wilson is a SharePoint solution and information architect and director of WiredLight, a global SharePoint solutions business.

Jeff Fried is the CTO at BA Insight, focusing on the development of search-based apps with SharePoint. He is a frequent speaker and writer.

Paul J. Swider is an international speaker, trainer, freelance consultant, and the founder of the Charleston SharePoint Users Group.

Read More Show Less

Table of Contents



What’s New from an Architectural Perspective? 2

On-Premise Server Farm Architecture 3

Web Server Tier 4

Application Server Tier 4

Database Server Tier 4

Small or Single-Tier Topology 4

Medium or Two-Tier Topology 5

Large or Three-Tier Topology 5

Geographically Distributed Topology 6

Service Application Architecture 6

Service Application Model 6

Available Service Applications 8

Service Application Life Cycle 11

Multitenancy Hosting Architecture 21

Site Subscriptions 22

Service Application Partitioning 22

Tenant Administration 26

Feature Packs 27

Search Architecture 27

Crawl and Content Processing Components 28

Analytics Processing Component 28

Index and Query Processing 29

Search Administration Component 30

Multi-Purpose (with Search) Medium-Sized Search Farm Topology Example 30

SQL Server Database Architecture 32

Database Topologies 32

SharePoint 2013 Databases 35

Cloud-Hosted Architectures 38

Security Features 39

Identity Features 39

Administration Model 40

Summary 41


Introduction to SharePoint 2013 43

Deployment Scenarios 44

On-Premise Deployment 44

Office 365 Deployment 44

Hosted Deployment 44

Hybrid Deployment 44

Packaging Scenarios 45

Full-Trust Farm Solution 45

Partial-Trust Sandboxed Solution 45

Apps for SharePoint 45

The Programming Model 45

The Evolution of SharePoint Programming 46

Challenges with CSOM in SharePoint 2010 47

Challenges with Server-Side Code 47

The New Programming Model 48

The App Model 51

SharePoint-Hosted Apps 51

Provider-Hosted Apps 52

Azure Auto-Hosted Apps 52

Apps or Solutions — Which Way to Go? 53

The App Security Model 55

Remote Events 58

Reporting Services 2012 Data Alerts 59

Events in External Lists 60

Remote Event Receivers 60

The Security Model in Remote Events 61

Workflows 63

Challenges with Workflows in SharePoint 2010 63

Workfl ow Architecture in SharePoint 2013 64

Building Your Workflow Development Environment 66

SharePoint Designer 2013 Workfl ows 69

Using Workflows in Apps 71

Enterprise Content Management 71

Site Policies 71

Managed Meta Data 73

Web Content Management 74

The Structural Publishing Model 75

The Dynamic Publishing Model 75

Taxonomy-Driven Navigation 75

Term-Driven Publishing Pages 76

Cross-Site Publishing 77

Hostname Site Collections 79

Multilingual Features 80

The Content by Search Web Part 81

Design Manager 81

Mobile Support 82

Image Rendition 83

App-Driven Publishing Sites 84

Search 84

Search Schema 84

Search Navigation 84

Result Sources 85

Display Templates 86

Result Types 86

Query Rules 87

Continuous Crawl 88

Putting It All Together 88

Query Languages 89

Exporting and Importing Search Settings 90

Search-Driven Solutions 90

BCS 91

OData Connector 92

BCS Powered Apps 92

CSOM and REST Interface 93

Summary 94


Customization Options with SharePoint 96

OOB Developer Experience 97

Understanding the User Interface for Customization 98

Understanding SharePoint Designer 2013 102

New Features in SharePoint Designer 102

Navigating the User Interface 105

Understanding Visual Studio 2012 Tools 106

Starting a New SharePoint 2013 Project 107

Visual Studio Integrated List and Content Type Support 108

SharePoint Connections in Server Explorer 109

Solution Explorer Integration 109

Mapped Folders 110

Applications for SharePoint 110

SharePoint Solutions (Classic Solution) 114

Setting Up Your Development Environment 120

Development Environment 120

Local Development Environment 121

Troubleshooting with Debugging 123

F5 Debugging 123

Debugging Using the Developer Dashboard 126

Debugging Using SharePoint Logs 127

Debugging Silverlight Code 127

Other Useful Tools for Debugging and Testing 128

Summary 129


Getting Started with Application Lifecycle Management 132

Three Application Lifecycle Management Perspectives 132

Application Lifecycle Management Tools 134

Understanding Key Development Tools 135

Understanding the SharePoint 2013

Development Models 136

Planning your Customization Model and Release Packaging Approach 139

Customization Models 139

Release Packaging Approach 142

Planning your Key Development Phases and Release Model 146

Key Development Phases 146

Release Models 149

Planning Your Upgrade and Patching Approach 154

Upgrading Solutions and Features 154

Patching Your SharePoint 2013 Environment 155

Planning Your SharePoint Team Environments 156

Environments for Large Projects 156

Identifying the Environments Your Developers Require 157

Identifying the Environments Your Testers Require 163

Managing SharePoint 2013 Development Teams 163

Selecting Software Development Methodology 164

Setting Up Development Standards and Best Practices 165

Managing, Tracking, and Recording Key Design Decisions 166

Planning for Regular Code Reviews 166

Large Project Considerations 167

Large Project Life-Cycle Models 167

Decentralized Development Teams 169

Off shore Teams 169

Managing SharePoint 2013 Testing Teams 171

Setting Up a Testing Strategy 171

Unit Testing 172

Automated Builds and Integration Testing 172

Test Case Planning 174

Performance Testing 175

Functional Testing 177

User Acceptance Testing 177

Defect Tracking 178

Other Testing Considerations 178

Summary 179


Moving to the Cloud 181

What Is the Cloud? 182

Why Companies Care 184

Why Developers Care 185

Cautions for Cloud Adopters 186

Introducing Windows Azure 188

Execution Models 189

Mobile Services 189

High-Performance Computing 190

Marketplace 190

Data Management 190

Business Analytics 190

Media 191

Networking 191

Caching 191

Messaging 192

Identity 192

SharePoint and Microsoft’s Cloud Off erings 192

SaaS Licensing for SharePoint 193

PaaS Licensing for SharePoint 194

Integration Models 195

Summary 198


Architectural Overview of SharePoint Apps 201

Programming Model Overview 202

Comparing Apps and Solutions 203

Hosting Options 204

Examining an App 205

Adding an App 207

Developing Your First App 208

Client-Side Object Model 212

CSOM Improvements over SharePoint 2010 214

RESTful SharePoint 2013 216

Developing Externally Hosted Apps 218

High-Trust Apps for Single Server Development Environments 219

Developing a Provider-Hosted App 221

Developing an Azure Auto-hosted App 224

Summary 229


Developing Your App User Experience 231

Developing an Embeddable App or App Part 236

Developing a Custom Action App 239

App Design Guidelines 242

Developing Your App Packaging 242

Developing Your App Deployment 244

Publishing to the Offi ce Store 244

Publishing to an App Catalog 245

Developing for App Upgradeability 245

Updating SharePoint Apps 246

App Migration 246

Additional Considerations for Apps Developers 247

Key Recommendations 247

Decision Criteria for Cloud-hosted Apps Versus SharePoint-hosted Apps 248

Decision Criteria for Developing Apps Versus Farm Solutions 248

Decision Criteria for Developing Provider-hosted Versus Azure-hosted Apps 252

Summary 252


New and Improved Social Features in SharePoint 2013 254

New User Experience 254

Multiple Supported Browsers 255

Rich Text Editor 256

Enterprise Social Networking 256

Sharing Content 257

Enticing User Contributions with Blogs, Wikis, and Discussions 258

Socializing Categorization and Feedback 259

Enterprise Taxonomy 261

Traditionally Social User-Generated Content Experiences 261

Wikis Everywhere 261

Blogs 262

Communities 263

Community Site Template 265

Discussions 266

Reputation 267

Gifted Badges 268

Best Replies Used with Question and Answer 269

Members Page 269

My Sites in Depth 269

User Profi le 270

My Site Document Libraries and SkyDrive Pro 271

Following Content and People 272

Newsfeed in Depth 272

Microblogs 273

Activity Feed 275

Programming with the Social API 275

Summary 277


Search Architecture and Extensibility 280

New Search Architecture 280

Implications of the New Search Architecture 281

Extensibility Points for Search 282

Top Customization Scenarios 283

Search Drives Applications 283

Out-of-the-box Search Applications 284

Search-driven Web Content Management 285

Social Features — Driven by Search 286

e-Discovery — Driven by Search 286

Working at the UX Layer 288

Components of the Search Center 288

Search Web Parts 289

The Content Search Web Part 290

Result Types and Display Templates 291

Working with Managed Properties 295

The Hover Panel 297

Summary — Using Result Types and Display Templates 298

Working with Queries 298

Query Processing 299

Links with Predefined Queries 301

Using REST and CSOM to Query Search 301

Search Query Syntax 303

Query Builder 307

Query Rules 308

Summary – Working with Queries 312

Working with Content 312

Content Capture – Crawling and Connectors 312

Security Trimming 320

Customizing Content Enrichment 322

Working with Federation and Result Sources 327

Summary — Working with Content 331

Tailoring Relevance 332

Managing Relevance via Queries and Content 332

Rank Profiles 334

Tying It All Together 336

Building Quick Search Verticals 336

Building Custom Search-based Applications 336

Combining Search with Other Workloads 338

Summary: Building Search-based

Applications in SharePoint 338


Taxonomy and the Information Architect 342

Administration 343

Site Navigation 344

Page Creation 346

Search-Driven Publishing 347

Catalogs for Site Publishing 348

Cross-Site Collection Publishing 349

Create and Edit Content 350

Ribbon Enhancements 350

Publishing Field Controls 351

Image Renditions 353

Dynamically Displaying Content 355

Content by Search Web Part 355

Search-Driven Web Parts 356

Access Content Programmatically 357

Server-Side API 357

Client-Side Object Model (CSOM) 359


Branding Sites 360

Master Pages 360

Page Layouts 360

Composed Looks 361

Custom Branding in Expression Web 363

Design Manager 366

Using Device Channels for Mobile Experiences and Device Targeting 366

Working with Design Files and Assets 368

Converting HTML Master Pages 369

Snippet Gallery 370

Package for Deployment 374

Usage Analytics 374

Architecture and Improvements 375

Using Usage Events in Code 375

Extending Usage Events 376

Multilingual Support 377

Summary 378


Introducing the Training Management Application 380

Creating the Sample List 380

Customizing SharePoint List Forms 381

Customizing SharePoint List Forms 381

InfoPath Controls 383

Creating Business Logic with Rules and Views 384

Publishing List Forms 388

Designing InfoPath Form Templates 390

What Is a Form Library? 391

Designing Your Form Template 392

Querying SharePoint Lists in Forms 397

Querying REST Web Services 399

Submit Behavior 402

Form Programming 403

Publishing InfoPath Forms 411

Form Security 414

Sandboxing Your Forms 414

Form Anatomy 415

Working with the Form XML in Code 419

Tools for Form Developers 427

The Rule Inspector 427

The Design Checker 428

InfoPath JavaScript Tool 429

Summary 430


The Document Management Mindset 432

ECM Features 432

Expanded ECM Object Model 436

Getting the Most from the Document Center 437

Visual Studio and the Document Center 439

Content Routing 439

Managing the Content Organizer 439

Using Document Libraries in the Document Center 443

Meta-Data Navigation and Filtering 444

Visual Studio and Document Libraries 446

Records Management 448

Record Identification 449

Auditing and Reporting 450

Records Management API 451

Declaring and Undeclaring Records 451

Creating Organizer Rules 453

eDiscovery and Compliance 457

eDiscovery Center Site Template 457

eDiscovery in SharePoint 2013 458

Create Compliance with SharePoint 2013 461

Retention Schedules 465

Content Management Interoperability Services (CMIS) 470

Summary 471


Introducing Business Connectivity Services 474

Creating Simple BCS Solutions 476

Creating Simple O365 Solutions 479

Understanding BCS Architecture 480

Understanding Connectors 480

Understanding Business Data Connectivity 481

Understanding the Secure Store Service 485

Understanding Package Deployment 487

Understanding App Architecture 488

Working with BDC Metadata Models 489

Working with External Data Sources 490

Connecting with the SQL Server Connector 491

Connecting with the WCF Service Connector 495

Creating Methods 498

Implementing Method Stereotypes 499

Creating Methods for Databases 502

Creating Methods for Web Services 508

Defining Associations 509

Working with External Lists 513

Creating Custom List Actions 513

Creating Custom Forms 513

Summary 514


Creating .NET Assembly Connectors 515

Understanding the Project Tooling 516

Walking Through the Development Process 517

Packaging Considerations 532

Enabling Search Support 533

Working with the BDC Server Runtime Object Model 536

Connecting to the Metadata Catalog 537

Retrieving Model Elements 538

Executing Operations 539

Using ECTs in SharePoint Apps 546

Understanding App-Level ECTs 546

Understanding the BCS Client Object Model 548

Summary 549


Introducing Core Workflow Concepts 552

What Is a Workflow? 552

Workflow Activities 553

Workflow Actions 555

Workflow Forms 556

Workflow Tasks 559

Workflow History 559

Workflow Flow Control Templates 560

Workflow Scopes 562

Workflow Associations and Subscriptions 563

Workflow Event Listeners 564

Workflow Visualization 565

Workflow Authorization 566

Understanding the Workflow Platform Architecture in SharePoint 2013 567

Understanding Key Workflow Development Tools 568

Visio Professional 2013 569

SharePoint Designer 2013 570

Visual Studio 2012 572

Setting Up the Development Prerequisites 573

Creating Your Workfl ow and SharePoint

Development Environment 573

Installing the Workfl ow Manager 574

Installing Your Development Tools 574

Modeling a Workfl ow Using Visio 2013 575

Developing Workfl ows Using SharePoint Designer 2013 577

Setting Up the Site and List Prerequisites 577

Importing the Visio Workflow Diagram 578

Creating the Vacation Request List Workflow 579

Publishing the Workflow 588

Developing Custom Workflow Activities and Actions Using Visual Studio 2012 589

Creating a Custom Declarative Activity and Action 590

Developing a Custom Code Activity and Action 594

Developing Workfl ows Using Visual Studio 2012 595

Key Development Considerations 597

SharePoint 2010 Versus SharePoint 2013 Workflow 597

Declarative Versus Programmatic Workflows 597

Considering Where Workflows Execute 597

Determining Whether to Convert SharePoint 2010 Workflows to

SharePoint 2013 Workflows 598

SharePoint Designer Versus Visual Studio 2012 598

Deciding Between Sequential Versus State Machine Workflow 599

Summary 599


The History 601

Introducing SSRS 2012 602

Authoring Tools 603

Configuring the BI Center 606

Building and Deploying Reports 607

Authoring Reports 607

Laying Out Your Report 609

Data Visualizations 610

Tablix 612

Publishing Your Report to SharePoint 612

Publishing Report Parts 615

Report Viewer Web Part 616

Limitations 617

Connectable Report Viewer Web Part 617

ATOM Data Feeds 618

Reporting Services Data Alert 619

Open with Report Builder 3.0 620

Caching and Snapshots 620

Stored Credentials 622

Managing Parameters 623

Planning 624

Caching Your Report 625

Managing Cache Refresh Plans 626

Snapshots 626

Diff erences Between Caching and Snapshots 628

Reporting on SharePoint Data 629

Creating a Sample List 630

Building the Report 630

Querying Large Lists 631

Multiple Zones 632

Anonymous Access to Reports 632

Reporting Services Execution Account 633

Summary 634


What’s New 637

Updates to the Client 637

Customization Enhancements 637

New Enhancements to Excel Service APIs 637

Dashboards and Excel Mashups 637

Excel Interactive View (Excel Everywhere) 639

Excel 641

Flash Fill 641

Web Service Functions 642

Excel Web Apps 643

Excel Apps for Offi ce 643

Excel Task Pane Apps 644

Excel Content Apps 645

Excel Services 647

Excel Services Architecture 647

Excel Services Data Access 647


Excel Services Web Access 660

JavaScript Object Model (JSOM) 660

User Defi ned Functions (UDF) 665

SOAP Web Services 669

Summary 670


Business Intelligence 671

History 672

SharePoint 2013 Business Intelligence Components 674

Important BI Terms and Concepts 678

The Business Intelligence Center 680

Introducing PerformancePoint 2013 682

PerformancePoint Services Architecture 682

Changes in PerformancePoint 2013 684

Using PerformancePoint 2013 686

Configuring PerformancePoint Services 686

Using the AdventureWorks Sample Databases 686

Creating a Dashboard 691

What Else Is in the Box? 702

Extending PerformancePoint 707

Extensibility Targets in PerformancePoint 2013 707

Custom Data Sources 709

Custom Reports, Filters, and Transformations 716

Deploying Customizations 717

Summary 718


Access 2013 722

Exploring Access 2013 723

Access Services 727

On-Premise Architecture 728

Hosted Architecture 729

Upgrade Considerations 729

Database Components 729

Building an Application with Access Services 736

Prerequisites 736

Creating an Access Web App 742

Deploying Access Applications 750

Summary 751



Read More Show Less

Customer Reviews

Be the first to write a review
( 0 )
Rating Distribution

5 Star


4 Star


3 Star


2 Star


1 Star


Your Rating:

Your Name: Create a Pen Name or

Barnes & Noble.com Review Rules

Our reader reviews allow you to share your comments on titles you liked, or didn't, with others. By submitting an online review, you are representing to Barnes & Noble.com that all information contained in your review is original and accurate in all respects, and that the submission of such content by you and the posting of such content by Barnes & Noble.com does not and will not violate the rights of any third party. Please follow the rules below to help ensure that your review can be posted.

Reviews by Our Customers Under the Age of 13

We highly value and respect everyone's opinion concerning the titles we offer. However, we cannot allow persons under the age of 13 to have accounts at BN.com or to post customer reviews. Please see our Terms of Use for more details.

What to exclude from your review:

Please do not write about reviews, commentary, or information posted on the product page. If you see any errors in the information on the product page, please send us an email.

Reviews should not contain any of the following:

  • - HTML tags, profanity, obscenities, vulgarities, or comments that defame anyone
  • - Time-sensitive information such as tour dates, signings, lectures, etc.
  • - Single-word reviews. Other people will read your review to discover why you liked or didn't like the title. Be descriptive.
  • - Comments focusing on the author or that may ruin the ending for others
  • - Phone numbers, addresses, URLs
  • - Pricing and availability information or alternative ordering information
  • - Advertisements or commercial solicitation


  • - By submitting a review, you grant to Barnes & Noble.com and its sublicensees the royalty-free, perpetual, irrevocable right and license to use the review in accordance with the Barnes & Noble.com Terms of Use.
  • - Barnes & Noble.com reserves the right not to post any review -- particularly those that do not follow the terms and conditions of these Rules. Barnes & Noble.com also reserves the right to remove any review at any time without notice.
  • - See Terms of Use for other conditions and disclaimers.
Search for Products You'd Like to Recommend

Recommend other products that relate to your review. Just search for them below and share!

Create a Pen Name

Your Pen Name is your unique identity on BN.com. It will appear on the reviews you write and other website activities. Your Pen Name cannot be edited, changed or deleted once submitted.

Your Pen Name can be any combination of alphanumeric characters (plus - and _), and must be at least two characters long.

Continue Anonymously

    If you find inappropriate content, please report it to Barnes & Noble
    Why is this product inappropriate?
    Comments (optional)