26
Office 365 – Introduction to SharePoint Online Development Corey Roth (@coreyroth) Applications Architect Infusion

Office 365 - Introduction to SharePoint Online Development - SharePoint Saturday New Orleans 2012

Embed Size (px)

DESCRIPTION

Slides I gave at my talk on getting started with SharePoint Online development at SharePoint Saturday New Orleans 2012.

Citation preview

Page 1: Office 365 - Introduction to SharePoint Online Development - SharePoint Saturday New Orleans 2012

Office 365 – Introduction to SharePoint Online DevelopmentCorey Roth (@coreyroth)Applications ArchitectInfusion

Page 2: Office 365 - Introduction to SharePoint Online Development - SharePoint Saturday New Orleans 2012

Corey RothAbout me

Applications Architect at Infusion Development Two-time Microsoft SharePoint MVP Specializing in ECM and Search Passed all SharePoint 2010 certification exams E-mail: [email protected] Twitter: @coreyroth Blog: www.dotnetmafia.com

Page 3: Office 365 - Introduction to SharePoint Online Development - SharePoint Saturday New Orleans 2012

Breaking the myth… You can customize more than you

think

Page 4: Office 365 - Introduction to SharePoint Online Development - SharePoint Saturday New Orleans 2012

Customization Options No-code workflows Master pages and page layouts Site Templates Roll-up data Browser-based forms SharePoint Web Services Sandboxed Solutions

Page 5: Office 365 - Introduction to SharePoint Online Development - SharePoint Saturday New Orleans 2012

Customization Limitations No farm level features No site definitions Cannot modify

built-in SharePoint files web.config security policies

No changes to web server or .NET framework No custom databases

Page 6: Office 365 - Introduction to SharePoint Online Development - SharePoint Saturday New Orleans 2012

Types of Customization “Browser” Visual Studio 2010 Visual Studio “11” Beta SharePoint Designer 2010?

Page 7: Office 365 - Introduction to SharePoint Online Development - SharePoint Saturday New Orleans 2012

Browser-based Customizations Lists and Libraries Content Types Site Pages Site Templates Subsites Site Properties Layouts Content Editor Web Part + jQuery

Page 8: Office 365 - Introduction to SharePoint Online Development - SharePoint Saturday New Orleans 2012

SharePoint Designer 2010 Customizations Theming and Branding Master Pages Page Layouts CSS Workflows

Page 9: Office 365 - Introduction to SharePoint Online Development - SharePoint Saturday New Orleans 2012

Using Visual Studio Allows development of custom solutions Requires SharePoint 2010 Sandboxed Solutions

Page 10: Office 365 - Introduction to SharePoint Online Development - SharePoint Saturday New Orleans 2012

Visual Studio - Allowed SharePoint Project Items Web Parts List definitions Event receivers Content Types Visual Web Parts

(with VS “11” or SharePoint Power Tools)

Page 11: Office 365 - Introduction to SharePoint Online Development - SharePoint Saturday New Orleans 2012

Prohibited SharePoint Project Items OOTB Visual Web Parts (VS 2010) Application Pages BDC Models

Page 12: Office 365 - Introduction to SharePoint Online Development - SharePoint Saturday New Orleans 2012

Visual Studio 11 Beta Publish solutions to SharePoint

Online! New SharePoint Project items

Visual Web Part Silverlight Web Part

Content Type Editor List Editor Enhanced JavaScript support

Page 13: Office 365 - Introduction to SharePoint Online Development - SharePoint Saturday New Orleans 2012

Visual Studio 11 – Solution Publishing Publish a solution package to:

Remote SharePoint server (Sandboxed) SharePoint Online (Sandboxed) File System

Page 14: Office 365 - Introduction to SharePoint Online Development - SharePoint Saturday New Orleans 2012

Interacting with SharePoint Sandboxed Code Client Object Model REST / ODATA Web Services

Page 15: Office 365 - Introduction to SharePoint Online Development - SharePoint Saturday New Orleans 2012

Sandboxed Code Similar sandbox to SharePoint 2010 Restricted subset of SharePoint API Deployed at Site Collection level

Page 16: Office 365 - Introduction to SharePoint Online Development - SharePoint Saturday New Orleans 2012

Sandboxed Solutions

Corey Roth (@coreyroth)Applications ArchitectInfusion

demo

Page 17: Office 365 - Introduction to SharePoint Online Development - SharePoint Saturday New Orleans 2012

Client Object Model Allows client side development from

.NET Applications JavaScript Silverlight

Page 18: Office 365 - Introduction to SharePoint Online Development - SharePoint Saturday New Orleans 2012

Client Object Model

Corey Roth (@coreyroth)Applications ArchitectInfusion

demo

Page 19: Office 365 - Introduction to SharePoint Online Development - SharePoint Saturday New Orleans 2012

REST / ODATA Provides ODATA interface to lists Located at /_vti_bin/listdata.svc Used from Silverlight, .NET, etc CRUD access using LINQ

Page 20: Office 365 - Introduction to SharePoint Online Development - SharePoint Saturday New Orleans 2012

REST / ODATA

Corey Roth (@coreyroth)Applications ArchitectInfusion

demo

Page 21: Office 365 - Introduction to SharePoint Online Development - SharePoint Saturday New Orleans 2012

Web Services Standard SharePoint Web Services such as:

Alerts Copy Lists Search Sites Users and Groups

Located in /_vti_bin

Page 22: Office 365 - Introduction to SharePoint Online Development - SharePoint Saturday New Orleans 2012

Web Services

Corey Roth (@coreyroth)Applications ArchitectInfusion

demo

Page 23: Office 365 - Introduction to SharePoint Online Development - SharePoint Saturday New Orleans 2012

Debugging Techniques Can’t attach a debugger to SharePoint Online Revert to conventional techniques

Compiler directives (#if DEBUG) Comments / Literals

Page 24: Office 365 - Introduction to SharePoint Online Development - SharePoint Saturday New Orleans 2012

Test Environment? Buy another Office 365 tenant Separate private site collection

Page 26: Office 365 - Introduction to SharePoint Online Development - SharePoint Saturday New Orleans 2012

© 2011 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted

to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.