SlideShare a Scribd company logo
1 of 21
Access SharePoint Remotely Mohamed Yehia February 2010
Ana Meen? Technical Architect www.mohamedyehia.net                         @mohdyehia myehia@live.com
Why? SharePoint is used as:  Data repository File sharing Social network Record management Collaboration Simply, make data available Integrate LOB
Challenges SharePoint Object Model available on the server Web services require XML and CAML Major request to increase web services Different from server side code.
Client Object Model Simple API an abstraction layer to return results as recognizable SharePoint objects .Net CLR Silverlight Javascript
Under the Hood ECMAScriptControlsand Logic Browser JSONResponse Server OM ECMAScript OM Client.svc XMLRequest Proxy XMLRequest Proxy Contentdatabase Managed OM JSONResponse ManagedClient Managed Controls and Logic SharePointServer
Not Another Object Model! Efficiency SQL Like Batch processing Network traffic Server Resources Productivity
.Net CLR – Client Object Model Assemblies Path %ProgramFiles%ommon Filesicrosoft Sharedeb server extensions4SAPI Microsoft.SharePoint.Client.dll Microsoft.SharePoint.Client.Runtime.dll. (145 kb) Compared to  Microsft.SharePoint.dll (15.3 MB)
demo .Net CLR – Client Object Model
.Net CLR – Client OM, Tips ClientContext is the center of the universe Remember to always  ExecuteQuery Use LINQ to load what you really need Use CamlQuery to access Lists
Silverlight – Client Object Model Assemblies Path %ProgramFiles%ommon Filesicrosoft Sharedeb Server Extensions4EMPLATEAYOUTSlientBin Microsoft.SharePoint.Client.Silverlight.dll  Microsoft.SharePoint.Client.Silverlight.Runtime.dll
demo Silverlght– Client Object Model
Silverlight – Client OM, Tips ExecuteQuery is always asynchronous Callback methods are executed on another thread  Use Invokes to update the UI
Javascript – Client Object Model Add link to SP.Js %ProgramFiles%ommon Filesicrosoft Sharedeb Server Extensions4EMPLATEAYOUTS  Debug versions available Automatically adds SP.Core.js,  SP.Runtime.js
demo Javascript– Client Object Model
Javascript– Client OM, Tips ExecuteQuery is always asynchronous Use jQuery Use with  Applications Pages Dialog framework Web parts
The Site is the Limit Anything under SPSite Create / delete subsites Create/ delete/ manage  lists Create custom actions Create Fields Etc.
Alternatives OOB Web Services  ADO.NET Data Services  sitrurl/_vti_bin/listdata.svc Develop your WCF/ Web services
Learn More MSDN (http://MSSharePointDeveloper.com) TechNet (http://MSSharePointITPro.com) Twitter Search #SP2010
Coming Sessions	 When MEF meets Silverlight – Amr El Sehemy What’s New in SharePoint Designer 2010 – Ayman El Hattab  in C 7.02 Session 4 : Architecture of SharePoint 2010  Alexander Meijers  C 7.01
Thanks www.mohamedyehia.net @mohdyehia myehia@live.com

More Related Content

What's hot

Building high scale, highly available websites in SharePoint 2010
Building high scale, highly available websites in SharePoint 2010Building high scale, highly available websites in SharePoint 2010
Building high scale, highly available websites in SharePoint 2010Ben Robb
 
Build a SharePoint website in 60 minutes
Build a SharePoint website in 60 minutesBuild a SharePoint website in 60 minutes
Build a SharePoint website in 60 minutesBen Robb
 
What’s New for Devs
What’s New for DevsWhat’s New for Devs
What’s New for DevsMicrosoftFeed
 
ECS19 - Vesa Juvonen - SharePoint Development for Enterprises - What's New an...
ECS19 - Vesa Juvonen - SharePoint Development for Enterprises - What's New an...ECS19 - Vesa Juvonen - SharePoint Development for Enterprises - What's New an...
ECS19 - Vesa Juvonen - SharePoint Development for Enterprises - What's New an...European Collaboration Summit
 
Introduction to the Client OM in SharePoint 2010
Introduction to the Client OM in SharePoint 2010Introduction to the Client OM in SharePoint 2010
Introduction to the Client OM in SharePoint 2010Ben Robb
 
SharePoint as Development Platform for the Modern Intranet
SharePoint as Development Platform for the Modern IntranetSharePoint as Development Platform for the Modern Intranet
SharePoint as Development Platform for the Modern IntranetHaaron Gonzalez
 
A SharePoint Developers Guide to Project Server
A SharePoint Developers Guide to Project ServerA SharePoint Developers Guide to Project Server
A SharePoint Developers Guide to Project ServerAlexander Burton
 
Unity Connect Haarlem 2016 - The Lay of the Land of Client-Side Development c...
Unity Connect Haarlem 2016 - The Lay of the Land of Client-Side Development c...Unity Connect Haarlem 2016 - The Lay of the Land of Client-Side Development c...
Unity Connect Haarlem 2016 - The Lay of the Land of Client-Side Development c...Marc D Anderson
 
WKDNUG SP2010 Development Presentation
WKDNUG SP2010 Development PresentationWKDNUG SP2010 Development Presentation
WKDNUG SP2010 Development PresentationRob Wilson
 
Developing Apps for SharePoint 2013
Developing Apps for SharePoint 2013Developing Apps for SharePoint 2013
Developing Apps for SharePoint 2013SPC Adriatics
 
When to Develop on a Platform (IndyTechFest 2008)
When to Develop on a Platform (IndyTechFest 2008)When to Develop on a Platform (IndyTechFest 2008)
When to Develop on a Platform (IndyTechFest 2008)Rob Wilson
 
Sp administration-training-prism
Sp administration-training-prismSp administration-training-prism
Sp administration-training-prismThuan Ng
 
SharePoint 2010 Application Development
SharePoint 2010 Application DevelopmentSharePoint 2010 Application Development
SharePoint 2010 Application Developmentmattbremer
 
Develop, Build, Package and Deploy Office Add-ins with Visual Studio - ESPC 2015
Develop, Build, Package and Deploy Office Add-ins with Visual Studio - ESPC 2015Develop, Build, Package and Deploy Office Add-ins with Visual Studio - ESPC 2015
Develop, Build, Package and Deploy Office Add-ins with Visual Studio - ESPC 2015Bram de Jager
 
Building your first app for share point 2013
Building your first app for share point 2013Building your first app for share point 2013
Building your first app for share point 2013Muawiyah Shannak
 
Application innovation & Developer Productivity
Application innovation & Developer ProductivityApplication innovation & Developer Productivity
Application innovation & Developer ProductivityKushan Lahiru Perera
 
Deep Dive Building Office Mail Add-ins with the Microsoft Graph
Deep Dive Building Office Mail Add-ins with the Microsoft GraphDeep Dive Building Office Mail Add-ins with the Microsoft Graph
Deep Dive Building Office Mail Add-ins with the Microsoft GraphBram de Jager
 
Streamlining Business Processes with InfoPath and SharePoint
Streamlining Business Processes with InfoPath and SharePointStreamlining Business Processes with InfoPath and SharePoint
Streamlining Business Processes with InfoPath and SharePointRob Wilson
 
Practical Business Intelligence in SharePoint 2013 - Honolulu
Practical Business Intelligence in SharePoint 2013 - HonoluluPractical Business Intelligence in SharePoint 2013 - Honolulu
Practical Business Intelligence in SharePoint 2013 - HonoluluIvan Sanders
 
Developing an aspnet web application
Developing an aspnet web applicationDeveloping an aspnet web application
Developing an aspnet web applicationRahul Bansal
 

What's hot (20)

Building high scale, highly available websites in SharePoint 2010
Building high scale, highly available websites in SharePoint 2010Building high scale, highly available websites in SharePoint 2010
Building high scale, highly available websites in SharePoint 2010
 
Build a SharePoint website in 60 minutes
Build a SharePoint website in 60 minutesBuild a SharePoint website in 60 minutes
Build a SharePoint website in 60 minutes
 
What’s New for Devs
What’s New for DevsWhat’s New for Devs
What’s New for Devs
 
ECS19 - Vesa Juvonen - SharePoint Development for Enterprises - What's New an...
ECS19 - Vesa Juvonen - SharePoint Development for Enterprises - What's New an...ECS19 - Vesa Juvonen - SharePoint Development for Enterprises - What's New an...
ECS19 - Vesa Juvonen - SharePoint Development for Enterprises - What's New an...
 
Introduction to the Client OM in SharePoint 2010
Introduction to the Client OM in SharePoint 2010Introduction to the Client OM in SharePoint 2010
Introduction to the Client OM in SharePoint 2010
 
SharePoint as Development Platform for the Modern Intranet
SharePoint as Development Platform for the Modern IntranetSharePoint as Development Platform for the Modern Intranet
SharePoint as Development Platform for the Modern Intranet
 
A SharePoint Developers Guide to Project Server
A SharePoint Developers Guide to Project ServerA SharePoint Developers Guide to Project Server
A SharePoint Developers Guide to Project Server
 
Unity Connect Haarlem 2016 - The Lay of the Land of Client-Side Development c...
Unity Connect Haarlem 2016 - The Lay of the Land of Client-Side Development c...Unity Connect Haarlem 2016 - The Lay of the Land of Client-Side Development c...
Unity Connect Haarlem 2016 - The Lay of the Land of Client-Side Development c...
 
WKDNUG SP2010 Development Presentation
WKDNUG SP2010 Development PresentationWKDNUG SP2010 Development Presentation
WKDNUG SP2010 Development Presentation
 
Developing Apps for SharePoint 2013
Developing Apps for SharePoint 2013Developing Apps for SharePoint 2013
Developing Apps for SharePoint 2013
 
When to Develop on a Platform (IndyTechFest 2008)
When to Develop on a Platform (IndyTechFest 2008)When to Develop on a Platform (IndyTechFest 2008)
When to Develop on a Platform (IndyTechFest 2008)
 
Sp administration-training-prism
Sp administration-training-prismSp administration-training-prism
Sp administration-training-prism
 
SharePoint 2010 Application Development
SharePoint 2010 Application DevelopmentSharePoint 2010 Application Development
SharePoint 2010 Application Development
 
Develop, Build, Package and Deploy Office Add-ins with Visual Studio - ESPC 2015
Develop, Build, Package and Deploy Office Add-ins with Visual Studio - ESPC 2015Develop, Build, Package and Deploy Office Add-ins with Visual Studio - ESPC 2015
Develop, Build, Package and Deploy Office Add-ins with Visual Studio - ESPC 2015
 
Building your first app for share point 2013
Building your first app for share point 2013Building your first app for share point 2013
Building your first app for share point 2013
 
Application innovation & Developer Productivity
Application innovation & Developer ProductivityApplication innovation & Developer Productivity
Application innovation & Developer Productivity
 
Deep Dive Building Office Mail Add-ins with the Microsoft Graph
Deep Dive Building Office Mail Add-ins with the Microsoft GraphDeep Dive Building Office Mail Add-ins with the Microsoft Graph
Deep Dive Building Office Mail Add-ins with the Microsoft Graph
 
Streamlining Business Processes with InfoPath and SharePoint
Streamlining Business Processes with InfoPath and SharePointStreamlining Business Processes with InfoPath and SharePoint
Streamlining Business Processes with InfoPath and SharePoint
 
Practical Business Intelligence in SharePoint 2013 - Honolulu
Practical Business Intelligence in SharePoint 2013 - HonoluluPractical Business Intelligence in SharePoint 2013 - Honolulu
Practical Business Intelligence in SharePoint 2013 - Honolulu
 
Developing an aspnet web application
Developing an aspnet web applicationDeveloping an aspnet web application
Developing an aspnet web application
 

Similar to Access SharePoint Remotely

Client Object Model - SharePoint Extreme 2012
Client Object Model - SharePoint Extreme 2012Client Object Model - SharePoint Extreme 2012
Client Object Model - SharePoint Extreme 2012daniel plocker
 
4 - Silverlight y SharePoint, por Rodrigo Diaz y Mauricio Angulo
4 - Silverlight y SharePoint, por Rodrigo Diaz y Mauricio Angulo4 - Silverlight y SharePoint, por Rodrigo Diaz y Mauricio Angulo
4 - Silverlight y SharePoint, por Rodrigo Diaz y Mauricio AnguloLuis Du Solier
 
Spicing up SharePoint web parts
Spicing up SharePoint web partsSpicing up SharePoint web parts
Spicing up SharePoint web partsRandy Williams
 
Mike Taulty MIX10 Silverlight Frameworks and Patterns
Mike Taulty MIX10 Silverlight Frameworks and PatternsMike Taulty MIX10 Silverlight Frameworks and Patterns
Mike Taulty MIX10 Silverlight Frameworks and Patternsukdpe
 
DevNext - Web Programming Concepts Using Asp Net
DevNext - Web Programming Concepts Using Asp NetDevNext - Web Programming Concepts Using Asp Net
DevNext - Web Programming Concepts Using Asp NetAdil Mughal
 
ASP.NET Presentation
ASP.NET PresentationASP.NET Presentation
ASP.NET PresentationRasel Khan
 
Web development concepts using microsoft technologies
Web development concepts using microsoft technologiesWeb development concepts using microsoft technologies
Web development concepts using microsoft technologiesHosam Kamel
 
Spring tutorials
Spring tutorialsSpring tutorials
Spring tutorialsTIB Academy
 
ASP.net MVC Introduction Wikilogia (nov 2014)
ASP.net MVC Introduction Wikilogia (nov 2014)ASP.net MVC Introduction Wikilogia (nov 2014)
ASP.net MVC Introduction Wikilogia (nov 2014)Hatem Hamad
 
Javascript Client & Server Architectures
Javascript Client & Server ArchitecturesJavascript Client & Server Architectures
Javascript Client & Server ArchitecturesPedro Melo Pereira
 
Dh2 Apps Training Part2
Dh2   Apps Training Part2Dh2   Apps Training Part2
Dh2 Apps Training Part2jamram82
 
Single Page Apps
Single Page AppsSingle Page Apps
Single Page AppsGil Fink
 
Web UI Tests: Introduce UI tests using Selenium
Web UI Tests: Introduce UI tests using Selenium Web UI Tests: Introduce UI tests using Selenium
Web UI Tests: Introduce UI tests using Selenium Peyman Fakharian
 
Single page applications with backbone js
Single page applications with backbone jsSingle page applications with backbone js
Single page applications with backbone jsGil Fink
 
Give your web apps some backbone
Give your web apps some backboneGive your web apps some backbone
Give your web apps some backboneRTigger
 
SoCal Code Camp 2011 - ASP.NET 4.5
SoCal Code Camp 2011 - ASP.NET 4.5SoCal Code Camp 2011 - ASP.NET 4.5
SoCal Code Camp 2011 - ASP.NET 4.5Jon Galloway
 

Similar to Access SharePoint Remotely (20)

Client Object Model - SharePoint Extreme 2012
Client Object Model - SharePoint Extreme 2012Client Object Model - SharePoint Extreme 2012
Client Object Model - SharePoint Extreme 2012
 
4 - Silverlight y SharePoint, por Rodrigo Diaz y Mauricio Angulo
4 - Silverlight y SharePoint, por Rodrigo Diaz y Mauricio Angulo4 - Silverlight y SharePoint, por Rodrigo Diaz y Mauricio Angulo
4 - Silverlight y SharePoint, por Rodrigo Diaz y Mauricio Angulo
 
Spicing up SharePoint web parts
Spicing up SharePoint web partsSpicing up SharePoint web parts
Spicing up SharePoint web parts
 
Mike Taulty MIX10 Silverlight Frameworks and Patterns
Mike Taulty MIX10 Silverlight Frameworks and PatternsMike Taulty MIX10 Silverlight Frameworks and Patterns
Mike Taulty MIX10 Silverlight Frameworks and Patterns
 
DevNext - Web Programming Concepts Using Asp Net
DevNext - Web Programming Concepts Using Asp NetDevNext - Web Programming Concepts Using Asp Net
DevNext - Web Programming Concepts Using Asp Net
 
ASP.NET Presentation
ASP.NET PresentationASP.NET Presentation
ASP.NET Presentation
 
Asp dot net long
Asp dot net longAsp dot net long
Asp dot net long
 
Asp.net
Asp.netAsp.net
Asp.net
 
Web development concepts using microsoft technologies
Web development concepts using microsoft technologiesWeb development concepts using microsoft technologies
Web development concepts using microsoft technologies
 
Spring tutorials
Spring tutorialsSpring tutorials
Spring tutorials
 
ASP.net MVC Introduction Wikilogia (nov 2014)
ASP.net MVC Introduction Wikilogia (nov 2014)ASP.net MVC Introduction Wikilogia (nov 2014)
ASP.net MVC Introduction Wikilogia (nov 2014)
 
Architecting RIAs
Architecting RIAsArchitecting RIAs
Architecting RIAs
 
ASP.NET OVERVIEW
ASP.NET OVERVIEWASP.NET OVERVIEW
ASP.NET OVERVIEW
 
Javascript Client & Server Architectures
Javascript Client & Server ArchitecturesJavascript Client & Server Architectures
Javascript Client & Server Architectures
 
Dh2 Apps Training Part2
Dh2   Apps Training Part2Dh2   Apps Training Part2
Dh2 Apps Training Part2
 
Single Page Apps
Single Page AppsSingle Page Apps
Single Page Apps
 
Web UI Tests: Introduce UI tests using Selenium
Web UI Tests: Introduce UI tests using Selenium Web UI Tests: Introduce UI tests using Selenium
Web UI Tests: Introduce UI tests using Selenium
 
Single page applications with backbone js
Single page applications with backbone jsSingle page applications with backbone js
Single page applications with backbone js
 
Give your web apps some backbone
Give your web apps some backboneGive your web apps some backbone
Give your web apps some backbone
 
SoCal Code Camp 2011 - ASP.NET 4.5
SoCal Code Camp 2011 - ASP.NET 4.5SoCal Code Camp 2011 - ASP.NET 4.5
SoCal Code Camp 2011 - ASP.NET 4.5
 

Recently uploaded

Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsHyundai Motor Group
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraDeakin University
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 

Recently uploaded (20)

Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning era
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
The transition to renewables in India.pdf
The transition to renewables in India.pdfThe transition to renewables in India.pdf
The transition to renewables in India.pdf
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 

Access SharePoint Remotely

  • 1. Access SharePoint Remotely Mohamed Yehia February 2010
  • 2. Ana Meen? Technical Architect www.mohamedyehia.net @mohdyehia myehia@live.com
  • 3. Why? SharePoint is used as: Data repository File sharing Social network Record management Collaboration Simply, make data available Integrate LOB
  • 4. Challenges SharePoint Object Model available on the server Web services require XML and CAML Major request to increase web services Different from server side code.
  • 5. Client Object Model Simple API an abstraction layer to return results as recognizable SharePoint objects .Net CLR Silverlight Javascript
  • 6. Under the Hood ECMAScriptControlsand Logic Browser JSONResponse Server OM ECMAScript OM Client.svc XMLRequest Proxy XMLRequest Proxy Contentdatabase Managed OM JSONResponse ManagedClient Managed Controls and Logic SharePointServer
  • 7. Not Another Object Model! Efficiency SQL Like Batch processing Network traffic Server Resources Productivity
  • 8. .Net CLR – Client Object Model Assemblies Path %ProgramFiles%ommon Filesicrosoft Sharedeb server extensions4SAPI Microsoft.SharePoint.Client.dll Microsoft.SharePoint.Client.Runtime.dll. (145 kb) Compared to Microsft.SharePoint.dll (15.3 MB)
  • 9. demo .Net CLR – Client Object Model
  • 10. .Net CLR – Client OM, Tips ClientContext is the center of the universe Remember to always ExecuteQuery Use LINQ to load what you really need Use CamlQuery to access Lists
  • 11. Silverlight – Client Object Model Assemblies Path %ProgramFiles%ommon Filesicrosoft Sharedeb Server Extensions4EMPLATEAYOUTSlientBin Microsoft.SharePoint.Client.Silverlight.dll Microsoft.SharePoint.Client.Silverlight.Runtime.dll
  • 13. Silverlight – Client OM, Tips ExecuteQuery is always asynchronous Callback methods are executed on another thread Use Invokes to update the UI
  • 14. Javascript – Client Object Model Add link to SP.Js %ProgramFiles%ommon Filesicrosoft Sharedeb Server Extensions4EMPLATEAYOUTS Debug versions available Automatically adds SP.Core.js, SP.Runtime.js
  • 16. Javascript– Client OM, Tips ExecuteQuery is always asynchronous Use jQuery Use with Applications Pages Dialog framework Web parts
  • 17. The Site is the Limit Anything under SPSite Create / delete subsites Create/ delete/ manage lists Create custom actions Create Fields Etc.
  • 18. Alternatives OOB Web Services  ADO.NET Data Services sitrurl/_vti_bin/listdata.svc Develop your WCF/ Web services
  • 19. Learn More MSDN (http://MSSharePointDeveloper.com) TechNet (http://MSSharePointITPro.com) Twitter Search #SP2010
  • 20. Coming Sessions When MEF meets Silverlight – Amr El Sehemy What’s New in SharePoint Designer 2010 – Ayman El Hattab in C 7.02 Session 4 : Architecture of SharePoint 2010 Alexander Meijers C 7.01

Editor's Notes

  1. This diagram displays how the transport mechanism worksManage client OM = .NET / SilverlightAll communication goes through the client.svc WCF serviceMicrosoft implemented the client OM by decorating the core SharePoint OM with attributes if it was “client aware”[ClientCallableType(Name=“Web”,[…]),[…]]public class SPWeb {}Then a code gen tool generates the client OM assemblies and JavaScriptThis ensures that there’s fidelity between all the client OM’s and the server equiv