Professional SharePoint 2013 Development
Buy Rights Online Buy Rights

Rights Contact Login For More Details

  • Wiley

More About This Title Professional SharePoint 2013 Development

English

Thorough coverage of development in SharePoint 2013

A team of well-known Microsoft MVPs joins forces in this fully updated resource, providing you with in-depth coverage of development tools in the latest iteration of the immensely popular SharePoint. From building solutions to building custom workflow and content management applications, this book shares field-tested best practices on all aspect of SharePoint 2013 development.

  • Offers a thorough look at Windows Azure and SharePoint 2013
  • Includes new chapters on Application Life Cycle Management, developing apps in SharePoint, and building PerformancePoint Dashboards in SharePoint

Professional SharePoint 2013 Development is an essential SharePoint developer title.

English

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.

English

INTRODUCTION xxvii

CHAPTER 1: ARCHITECTURAL OVERVIEW OF SHAREPOINT 2013 1

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

CHAPTER 2: WHAT’S NEW IN SHAREPOINT 2013 43

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

CHAPTER 3: DEVELOPER TOOLS FOR SHAREPOINT 2013 95

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

CHAPTER 4: APPLICATION LIFECYCLE MANAGEMENT IN SHAREPOINT 2013 131

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

CHAPTER 5: INTRODUCING WINDOWS AZURE AND SHAREPOINT 2013 INTEGRATION 181

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

CHAPTER 6: GETTING STARTED WITH DEVELOPING APPS IN SHAREPOINT 2013 201

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

CHAPTER 7: FURTHER DEVELOPING APPS IN SHAREPOINT 2013 231

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

CHAPTER 8: DEVELOPING SOCIAL APPLICATIONS IN SHAREPOINT 2013 253

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

CHAPTER 9: BUILDING SEARCH-BASED APPLICATIONS IN SHAREPOINT 2013 279

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

CHAPTER 10: WEB CONTENT MANAGEMENT 341

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

REST 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

CHAPTER 11: USING INFOPATH WITH SHAREPOINT 2013 379

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

CHAPTER 12: ENTERPRISE DOCUMENT MANAGEMENT 431

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

CHAPTER 13: INTRODUCING BUSINESS CONNECTIVITY SERVICES 473

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

CHAPTER 14: ADVANCED BUSINESS CONNECTIVITY SERVICES 515

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

CHAPTER 15: WORKFLOW DEVELOPMENT IN SHAREPOINT 2013 551

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

CHAPTER 16: INTEGRATING REPORTING SERVICES 601

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

CHAPTER 17: DEVELOPING EXCEL APPLICATIONS IN SHAREPOINT 2013 635

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

REST API 653

Excel Services Web Access 660

JavaScript Object Model (JSOM) 660

User Defi ned Functions (UDF) 665

SOAP Web Services 669

Summary 670

CHAPTER 18: PERFORMANCEPOINT DASHBOARDS 671

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

CHAPTER 19: DEVELOPING APPLICATIONS WITH ACCESS 719

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

APPENDIX: ADDITIONAL HELP AND RESOURCES 753

INDEX 755

loading