New SharePoint CSOM version released for SharePoint Online - April 2017

We are happy to announce availability of new SharePoint Client Side Object Model (CSOM) version targeted for the Office 365 or more specifically for SharePoint and Project Online. This release again contains few updates on the existing SharePoint CSOM assemblies and some maintenance changes. Probably most interesting included capability is the DeclareItemAsRecordWithDeclarationDate() for records creation. This is targeted for the migration scenarios where you'd need to re-assign record declaration date for migrated item based on its original value in source system. 

You can find the latest CSOM package for SharePoint Online, including the Project Online CSOM assembly, from the NuGet gallery with an id of 'Microsoft.SharePointOnline.CSOM'. We are also working on updating the redistributable package at some point, but you can already right now start using some of these new capabilities in your solutions. We do recommend you to use the NuGet Package to gain access on latest version, rather than downloading the SDK to your machine.

Version of the newly released CSOM package is 16.1.6420.1200. Previous versions of the NuGet have not been removed, so that your existing solutions will continue working without issues and you can decide when the new version is taken into use. Notice that even though the Nuget version is increased to 16.1.6420.1200, actual assembly version of the released assemblies is 16.1.0.0. You can also check the version of the assemblies from the File Version attribute, which aligns with the NuGet version.

Picture from VS2017 with NuGet gallery open showing Microsoft.SharePointOnline.CSOM package with the updated version

SharePoint Online Management Shell will be also updated during upcoming days to match with this CSOM release. MSDN reference API documentation was last time updated during March and is targeted to get refresh during next few weeks again.  

Notice that since this NuGet package is targeted to SharePoint Online, you cannot use it directly in on-premises environments (SharePoint 2013 or 2016). This is because of the server side dependencies of the APIs. CSOM versioning model and dependency to your target environment is clarified in following blog post - Using correct Client Side Object Model (CSOM) version for SharePoint customizations. We have released separate NuGet packages for on-premises. See following blog post for additional details - SharePoint CSOM versions for on-premises released as NuGet packages.

New properties and methods cross assemblies

Here's a raw list of all the changes in the classes, properties and methods within this package. 

Microsoft.SharePoint.Client

Following properties, classes and methods have been added.

  • public property Microsoft.SharePoint.Client.CamlQuery.FolderServerRelativePath

  • public property Microsoft.SharePoint.Client.Field.CustomFormatter
  • public property Microsoft.SharePoint.Client.Field.ShowInFiltersPane

  • public property Microsoft.SharePoint.Client.List.DefaultItemOpenUseListSetting
  • public method Microsoft.SharePoint.Client.ListItem.SetComplianceTag
  • public enum value Microsoft.SharePoint.Client.ListPageRenderType.DropOffLibrary
  • public enum value Microsoft.SharePoint.Client.ListTemplateType.AppFilesCatalog
  • public enum value Microsoft.SharePoint.Client.ListTemplateType.FormulasTable
  • public enum value Microsoft.SharePoint.Client.ListTemplateType.RecipesTable

  • public property Microsoft.SharePoint.Client.ObjectSharingSettings.BlockPeoplePickerAndSharing
  • public enum Microsoft.SharePoint.Client.ShowInFiltersPaneStatus

  • public property Microsoft.SharePoint.Client.Site.GeoLocation

Microsoft.Office.Client.Policy

Following properties, classes and methods have been added.

  • public property Microsoft.SharePoint.Client.CompliancePolicy.SPPolicyEvent.EventTags
  • public method Microsoft.SharePoint.Client.CompliancePolicy.SPPolicyStoreProxy.OpenBinaryStreamForOriginalItem
  • public method Microsoft.SharePoint.Client.CompliancePolicy.SPPolicyStoreProxy.RetagReviewItemsWithMetas
  • public method Microsoft.SharePoint.Client.RecordsRepository.Records.DeclareItemAsRecordWithDeclarationDate

Following items have been REMOVED from this assembly

  • public property Microsoft.SharePoint.Client.CompliancePolicy.SPPolicyEvent.EventTag

“Sharing is caring”


Vesa Juvonen, Senior Program Manager, OneDrive-SharePoint Engineering, Microsoft - 28th of April 2017