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

Taking SharePoint 2010 Offline - European Best Practices Conference

on

  • 4,011 views

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

Statistics

Views

Total Views
4,011
Views on SlideShare
3,892
Embed Views
119

Actions

Likes
0
Downloads
24
Comments
0

2 Embeds 119

http://techblurt.com 118
http://techblurt.azurewebsites.net 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • 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

Taking SharePoint 2010 Offline - European Best Practices Conference Taking SharePoint 2010 Offline - European Best Practices Conference Presentation Transcript

  • Taking Sharepoint 2010 Offline
  • Agenda
    The Business Problem
    Out Of the Box Solutions
    Local Drafts
    SharePoint Workspace 2010
    Custom Solutions
    Silverlight Client
    Case Study & Demo
  • Aonghus Fraser
    CTO UniTech Ltd, Gold Partner based in Edinburgh, Scotland
    Developing Enterprise SharePoint solutions since 2003
    Various Microsoft MCSD, MCTS, MCPD certs
  • HEINEKEN UK
  • A Brand Ready Business –Doing Internal Business Better
    Now doing offline business better
  • The Business Problem
  • Generalising before we start…
    Coders
    Consultants, Developers, IT pros with Powershell
    Ex-coders
    Management? Sales?
    Non-coders
  • Out of the box
    Local Drafts & SharePoint Workspace 2010
  • Local Drafts
    Local copy of documents only (not lists)
    Versioning
    Checking in/out documents
    Office 2007+
  • 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”
  • 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
  • Cannot Sync Everything
    Calendar/Events lists
    Wikis
    Blog sites
    Portal sites
    Form libraries
    Slide libraries
    Surveys
    Site directories
    OneNote notebooks stored in document libraries
    IRM-protected document libraries.
  • Demo
    SharePoint Workspace 2010
  • Custom Solutions
    Getting Data Out
  • Getting Data Out
    Client Object Model APIs
    ECMAScript (JavaScript)
    .NET CLR Managed Code (C#/VB.NET)
    Silverlight
    SharePoint Native API
    .NET Managed Code
    SPMetal
    Command-line tool
    LINQ to SharePoint
    WCF
  • Client Object Model
    WCF service under the hood (/_vti_bin/client.svc)
    SharePoint Data
    ClientApplication
    .Net CLR
    Silverlight
    JavaScript
  • 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
  • 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
  • .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
  • 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
  • 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)
  • SPMetal Parameters
    Customise Entity Classes
    Include/exclude Content Types
    Include/exclude Columns
  • SharePoint & Custom WCF
    Dynamic Endpoints
    Supports SOAP, REST, and WCF Data Services
    Service Host Factory implementations
    No web.config bindings!
  • CKS:DEV
    http://cksdev.codeplex.com/
    WCF service SPI
    If you are a developer CKS:DEV will make your life easier!
    Foundation and Server versions
  • DEMO
    SPMetal, WCF, LINQ
  • Silverlight client
    Consuming SharePoint Data
  • Silverlight Client – Why?
    Low impact for IT
    Access to file system (limited to special folders)
    Isolated Storage
    Out Of Browser capabilities
    Model-View-ViewModel
    Windows Phone 7
  • Silverlight 4 OOB
    Same small runtime (~5MB)
    Installed Program (desktop/start menu link)
    WebBrowsercontrol (WebBrowserBrush)
    File System Access (limited)
    Increased Isolated Storage (25MB)
  • Sterling Isolated Storage Database
    Isolated Storage – 25MB OOB (1MB online)
    http://sterling.codeplex.com/
    Compact binary serialization
    Silverlight 4 & Windows Phone 7
    LINQ to Object queries
    Thanks to Jeremy Likness @jeremylikness
  • MVVM Framework - Caliburn.Micro
    Lean & Mean MVVM framework
    Easy to configure, great documentation
    Elegant & Testable
    Easy to understand Conventions
    http://caliburnmicro.codeplex.com
    Thanks to Rob Eisenberg @EisenbergEffect
    Honourable mentions:
    Jounce
    MVVM Light
  • CASE STUDY
  • 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
  • DEMO
    Heineken UK Sales Tool
  • Lessons learned (some painful!)
    SPMetal Lookup fields
    Circular reference risk
    CrossDomain.xml & ClientAccessPolicy.xml
    HttpHandler
    SLLauncher.exe
    Proxy Authentication (ISA/TMG)
    Inet / Browser Cache
    MVVM architecture evaluation
    Jounce, MVVM Light, Caliburn.Micro
    Silverlight Async Exception Handling
    Custom Message Inspectors
  • Further Info
    Twitter: @gusfraser
    Email: aonghus.fraser@unitech.net
    Occasional Blog: http://techblurt.com
  • Thank you