In this PnP Web Cast we concentrated on SharePoint Client Side Object Model (CSOM) versioning and how you can take the different SharePoint target versions into account in your customization. With the release of SharePoint 2016, we have now 3 different CSOM versions and handling this could be a challenge within your customizations. Each of these versions have small differences and you should use correct version dependent on your target environments. This will however cause some challenges on how to manage your builds and Visual Studio project configuration, so that you can still use one code base regardless of the target environment.
With small adjustments in your Visual Studio solution with preprocessor directives, you can however actually use the exact same code cross all of the environments. This will give you opportunities on building for example automated daily builds for all of the target environments from same Visual Studio solution.
Office Dev PnP initiative have been taken advantage of this design in the Office Dev PnP Core Component, so that we can easily automate daily integration testing cross SharePoint Online, SharePoint 2016 and SharePoint 2013.
Presentation covers following topics:
- Which CSOM version I should be using for which SharePoint environment?
- How the versioning and distribution works for the different environment?
- How to make my app/add-in to work across different environments?
- Recommendations around CSOM usage in Visual Studio and why you should not necessarily use available CSOM SDKs directly in enterprise development scenarios
Demo section concentrates on showing following topics:
- Demonstration of dynamic and automated switching of CSOM references in Visual Studio based on your target environment
- What changes are required to Visual Studio project to enable dynamic switching
- Recommendations around CSOM assembly installation and usage in your development environment
Presentation used in this web cast is available from http://docs.com/OfficeDevPnP.
See following resources around the covered topics
- Using correct Client Side Object Model (CSOM) version for SharePoint customizations - blog post at dev.office.com
- MS Build reference - Details around the VS project file modification options
- PnP Core Component GitHub repository - Was used as an example in the demo
Here's also links to specific CSOM distributables available for you, depending on your target environment
- SharePoint Online CSOM Nuget package - always the latest CSOM version for SharePoint Online
- SharePoint Online Client Components SDK
- SharePoint Server 2016 Client Components SDK
- SharePoint Server 2013 Client Components SDK
Thanks for your interest on the PnP initiative.
If you have any feedback or comments related on this web cast, please use the Office 365 Developer Patterns and Practices Yammer group to provider your input. Thx for your interest advance.