developing for sharepoint online

19
Developing for SharePoint Online Ari Bakker @aribakker

Upload: ari-bakker

Post on 18-Dec-2014

5.553 views

Category:

Technology


2 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Developing for SharePoint Online

Developing for SharePoint Online

Ari Bakker@aribakker

Page 2: Developing for SharePoint Online

Goals

• Learn how to develop applications for SharePoint Online deployments– Gain a basic understanding of the SharePoint

Online offering– Understand the limitations of developing in

SharePoint Online– Understand techniques for overcoming some of

these limitations

Page 3: Developing for SharePoint Online

SharePoint Online Flavours

• Office 365 Public Cloud– Professionals and small businesses (P plans)

• Limited to 50 users• Single site collection• Can deploy sandboxed solutions

– Medium businesses and enterprises (E plans)• Can deploy sandboxed solutions

• Office 365 Dedicated– Dedicated farm, aimed at 30,000+ seat deployments

• Farm solutions allowed (requires Microsoft approval)

Page 4: Developing for SharePoint Online

Why SharePoint Online?

• Handles variable load• Flexible cost of ownership• Business agility/time to market• Stability

Page 5: Developing for SharePoint Online

What’s In• My Sites• Office Integration (2007/2010)• SharePoint Workspace 2010 for Offline

Working• External Sharing• Simple Public-Facing Website• Document Libraries• Slide & Media Libraries• Business Taxonomies & Tagging• Document Sets & ID’s• Office Web Apps• Cross-site Collection Search• Search Refiners• Indexing Controls• People Search• Phonetic Search

• Excel Services• Access Services• Visio Services• SharePoint Web Services• Forms Services• Custom Web Parts• Silverlight controls• Sandboxed Solutions• Blogs • Wikis• Business Connectivity Services

Page 6: Developing for SharePoint Online

What’s Out

• Records Center• Information Rights Management (IRM)• SharePoint for Internet Sites and WCM workflow

and approval• Site Variations• PerformancePoint Services• Power Pivot• Full-Trust Code Solutions• FAST Search

Page 7: Developing for SharePoint Online

Development Options

• Browser based customisations• SharePoint designer/InfoPath Forms• Sandboxed solutions• Windows Azure

Page 8: Developing for SharePoint Online

Key sandbox limitations

• No access to the file system• Code restrictions:– GAC deployment prohibited– Restricted set of allowed assemblies

• No server side external calls• No Web Application or Farm scoped

functionality• No full-trust proxy allowed in SP-O standard

Page 9: Developing for SharePoint Online

Getting started

• Install Visual Studio 2010 SharePoint Power Tools– Sandboxed visual web part– Compile against allowed assemblies

• Debug using SPUCWorkerProcess locally• Use FXCop rules to validate solution against

SPO– SPO contains custom solution validator

• Create a test site collection in SPO

Page 10: Developing for SharePoint Online

Limitation #1 - File system access

• Limited access to the file system– Site definitions– User controls– Application pages– Branding resources– Web.config– ULS logs

Page 11: Developing for SharePoint Online

Limitation #1 - File system access

• Limited access to the file system– Site definitions – Use WebTemplates– User controls – Install Visual Studio Power Tools– Application pages – Use web parts– Branding resources – Use style library– Web.config – Use SPWeb property bag or lists– ULS logs – Log to lists. Consider resource usage

e.g. #if DEBUG or a property

Page 12: Developing for SharePoint Online

Limitation #2 - Accessing external data

• Server side external calls– Web service calls– Cross site-collection calls

Page 13: Developing for SharePoint Online

Limitation #2 - Accessing external data

• Server side external calls– Web service calls– Cross site-collection calls

• Solutions– Client side script – Silverlight, JavaScript, Managed

client OM– Business connectivity services– Data view web part

Page 14: Developing for SharePoint Online

Limitation #3 - Code restrictions

• GAC deployment prohibited– Custom workflow solution– Timer jobs

• Restricted set of allowed assemblies– SPSecurity.RunWithElevatedPriviledges

• Execution context in sandbox process– Only partial access to the Page and HttpRequest

objects

Page 15: Developing for SharePoint Online

Sandboxed Code Architecture

Page 16: Developing for SharePoint Online

Limitation #3 - Code restrictions

• Consider moving application logic into Azure– Supports complex business logic– Cheap data storage– Pay for what you use

Page 17: Developing for SharePoint Online

Limitation #4 - Deployment scope

• Web Application or Farm scoped functionality– Search managed properties– Service applications– Authentication providers (uses Windows Live or

ADFS)

Page 18: Developing for SharePoint Online

How do I get started?

• Office 365 free 30 day trialhttp://www.office365.com

• Visual Studio 2010 SharePoint Power Tools:http://tinyurl.com/spo-vspt

• FxCop Rules for SharePoint Onlinehttp://o365fxcoprules.codeplex.com

• Microsoft Cloud Essentials Packhttp://www.microsoftcloudpartner.com

Page 19: Developing for SharePoint Online

Thanks for listening

• Get in touch– [email protected]– @aribakker– http://www.sharepointconfig.com