• Like
Taking SharePoint 2010 Offline - European Best Practices Conference
Upcoming SlideShare
Loading in...5

Thanks for flagging this SlideShare!

Oops! An error has occurred.

Taking SharePoint 2010 Offline - European Best Practices Conference


My slides from the European SharePoint Best Practices Conference 2011 - Taking SharePoint 2010 Offline

My slides from the European SharePoint Best Practices Conference 2011 - Taking SharePoint 2010 Offline

Published in Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads


Total Views
On SlideShare
From Embeds
Number of Embeds



Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

    No notes for slide
  • Dave to introduce the problem with client hat on – 5 mins
  • Quick hand count…
  • Ever been on a train?
  • Where you’ve seen this sign?
  • Only to get this?
  • Maybe even a pub? For a SharePint?
  • Same result… what do you do?
  • ConditionalScope: Load Data Conditionally


  • 1. Taking Sharepoint 2010 Offline
  • 2. Agenda
    The Business Problem
    Out Of the Box Solutions
    Local Drafts
    SharePoint Workspace 2010
    Custom Solutions
    Silverlight Client
    Case Study & Demo
  • 3. Aonghus Fraser
    CTO UniTech Ltd, Gold Partner based in Edinburgh, Scotland
    Developing Enterprise SharePoint solutions since 2003
    Various Microsoft MCSD, MCTS, MCPD certs
  • 5. A Brand Ready Business –Doing Internal Business Better
    Now doing offline business better
  • 6. The Business Problem
  • 7. Generalising before we start…
    Consultants, Developers, IT pros with Powershell
    Management? Sales?
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13. Out of the box
    Local Drafts & SharePoint Workspace 2010
  • 14. Local Drafts
    Local copy of documents only (not lists)
    Checking in/out documents
    Office 2007+
  • 15. SharePoint Workspace 2010
    Successor to Microsoft Office Groove 2007
    Standalone client or Office Professional Plus2010
    “a client application that provides fast, any-time interactive access to document libraries and lists on Microsoft SharePoint Server 2010 and Microsoft SharePoint Foundation 2010”
  • 16. SharePoint Workspace Types
    SharePoint workspaces
    Synchronise library & list content between a SharePoint site and a workspace
    Groove workspaces
    Multi-user shared synchronised workspaces
    Shared Folder workspaces
    Windows folder sharing
  • 17. Cannot Sync Everything
    Calendar/Events lists
    Blog sites
    Portal sites
    Form libraries
    Slide libraries
    Site directories
    OneNote notebooks stored in document libraries
    IRM-protected document libraries.
  • 18. Demo
    SharePoint Workspace 2010
  • 19. Custom Solutions
    Getting Data Out
  • 20. Getting Data Out
    Client Object Model APIs
    ECMAScript (JavaScript)
    .NET CLR Managed Code (C#/VB.NET)
    SharePoint Native API
    .NET Managed Code
    Command-line tool
    LINQ to SharePoint
  • 21. Client Object Model
    WCF service under the hood (/_vti_bin/client.svc)
    SharePoint Data
    .Net CLR
  • 22. ECMAScript Client Object Model
    Must be hosted within a SharePoint Page
    Authentication performed by the page it is hosted within
    No ConditionalScope
    Limited use for a disconnected client
  • 23. Silverlight Client Object Model
    Can be run from:
    Silverlight Web Part
    Custom web page
    External Application Provider (EAP) for cross-domain
    CrossDomain.xml or ClientAccessPolicy.xml won’t work
    Can be used Out Of Browser – local cache required for offline
  • 24. .NET CLR Client Object Model
    Managed API – references:
    Microsoft.SharePoint.Client.dll (~280kb)
    Microsoft.SharePoint.Client.Runtime.dll (~145kb)
    (Compared with Microsoft.SharePoint.dll > 15MB!)
    Can be executed remotely e.g. WPF client
  • 25. SharePoint Native API
    Executed on a SharePoint Server
    Similar to WSS3/MOSS 2007
    No limitations e.g. RunWithElevatedPrivileges
    Typically combined with a custom (WCF) service
  • 26. SPMetal.exe
    SharePoint Foundation+ (no need for Server)
    Command-line tool to generate entity classes
    Strongly-typed access to SharePoint data
    Similar to LINQ to SharePoint
    Visual Studio Integration (External Tools)
  • 27. SPMetal Parameters
    Customise Entity Classes
    Include/exclude Content Types
    Include/exclude Columns
  • 28. SharePoint & Custom WCF
    Dynamic Endpoints
    Supports SOAP, REST, and WCF Data Services
    Service Host Factory implementations
    No web.config bindings!
  • 29. CKS:DEV
    WCF service SPI
    If you are a developer CKS:DEV will make your life easier!
    Foundation and Server versions
  • 30. DEMO
    SPMetal, WCF, LINQ
  • 31. Silverlight client
    Consuming SharePoint Data
  • 32. Silverlight Client – Why?
    Low impact for IT
    Access to file system (limited to special folders)
    Isolated Storage
    Out Of Browser capabilities
    Windows Phone 7
  • 33. Silverlight 4 OOB
    Same small runtime (~5MB)
    Installed Program (desktop/start menu link)
    WebBrowsercontrol (WebBrowserBrush)
    File System Access (limited)
    Increased Isolated Storage (25MB)
  • 34. Sterling Isolated Storage Database
    Isolated Storage – 25MB OOB (1MB online)
    Compact binary serialization
    Silverlight 4 & Windows Phone 7
    LINQ to Object queries
    Thanks to Jeremy Likness @jeremylikness
  • 35. MVVM Framework - Caliburn.Micro
    Lean & Mean MVVM framework
    Easy to configure, great documentation
    Elegant & Testable
    Easy to understand Conventions
    Thanks to Rob Eisenberg @EisenbergEffect
    Honourable mentions:
    MVVM Light
  • 36. CASE STUDY
  • 37. Heineken UK Sales Tool
    1,500 On Trade Sales People distributed nationally
    20+ brands
    Replaces expensive & out-of-date booklet released quarterly
    Requirements summary:
    “Website in a box”
    Easy to manage data
    Updates automatically
    Works offline
  • 38. DEMO
    Heineken UK Sales Tool
  • 39. Lessons learned (some painful!)
    SPMetal Lookup fields
    Circular reference risk
    CrossDomain.xml & ClientAccessPolicy.xml
    Proxy Authentication (ISA/TMG)
    Inet / Browser Cache
    MVVM architecture evaluation
    Jounce, MVVM Light, Caliburn.Micro
    Silverlight Async Exception Handling
    Custom Message Inspectors
  • 40. Further Info
    Twitter: @gusfraser
    Email: aonghus.fraser@unitech.net
    Occasional Blog: http://techblurt.com
  • 41. Thank you