Chilkat HOME Android™ Classic ASP C C++ C# Mono C# .NET Core C# C# UWP/WinRT DataFlex Delphi ActiveX Delphi DLL Visual FoxPro Java Lianja MFC Objective-C Perl PHP ActiveX PHP Extension PowerBuilder PowerShell PureBasic CkPython Chilkat2-Python Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ Visual Basic 6.0 VB.NET VB.NET UWP/WinRT VBScript Xojo Plugin Node.js Excel Go
(VB.NET UWP/WinRT) SharePoint -- Get File PropertyDemonstrates how to get a specific property of a SharePoint file. Any of the following properties can be retrieved:
' This requires the Chilkat API to have been previously unlocked. ' See Global Unlock Sample for sample code. Dim http As New Chilkat.Http ' If SharePoint Windows classic authentication is used, then set the ' Login, Password, LoginDomain, and NtlmAuth properties. http.Login = "SHAREPOINT_USERNAME" http.Password = "SHAREPOINT_PASSWORD" http.LoginDomain = "SHAREPOINT_NTLM_DOMAIN" http.NtlmAuth = True ' The more common case is to use SharePoint Online authentication (via the SPOIDCRL cookie). ' If so, do not set Login, Password, LoginDomain, and NtlmAuth, and instead ' establish the cookie as shown at SharePoint Online Authentication ' Indicate that we want a JSON reply http.Accept = "application/json;odata=verbose" ' Get the Author property. Dim url As String = "https://SHAREPOINT_HTTPS_DOMAIN/_api/web/GetFileByServerRelativeUrl('/Documents/VCAC-document.docx')/Author" Dim jsonReply As String = Await http.QuickGetStrAsync(url) If (http.LastMethodSuccess <> True) Then Debug.WriteLine(http.LastErrorText) Exit Sub End If Dim json As New Chilkat.JsonObject json.Load(jsonReply) json.EmitCompact = False ' Make sure it was a success response, and that we really have metadata. ' If it was an error response, then the JSON is error information.. If (http.LastStatus <> 200) Then Debug.WriteLine(json.Emit()) Debug.WriteLine("Failed.") Exit Sub End If Debug.WriteLine(json.Emit()) ' The Author property returns JSON looking like this: ' { ' "d": { ' "__metadata": { ' "id": "Web/GetUserById(18)", ' "uri": "https://SHAREPOINT_HTTPS_DOMAIN/_api/Web/GetUserById(18)", ' "type": "SP.User" ' }, ' "Groups": { ' "__deferred": { ' "uri": "https://SHAREPOINT_HTTPS_DOMAIN/_api/Web/GetUserById(18)/Groups" ' } ' }, ' "Id": 18, ' "IsHiddenInUI": false, ' "LoginName": "i:0#.w|mydomain\\msmith", ' "Title": "Mike Smith", ' "PrincipalType": 1, ' "Email": "msmith@mydomain.com", ' "IsSiteAdmin": false, ' "UserId": { ' "__metadata": { ' "type": "SP.UserIdInfo" ' }, ' "NameId": "s-1-5-21-3433503314-2897774614-343593928-1137", ' "NameIdIssuer": "urn:office:idp:activedirectory" ' } ' } ' } ' ' Get the Title and Email: Debug.WriteLine("----") Debug.WriteLine("Title: " & json.StringOf("d.Title")) Debug.WriteLine("Email: " & json.StringOf("d.Email")) Debug.WriteLine("----") ' -------------------------------------------------------------------- ' Get the Versions property. url = "https://SHAREPOINT_HTTPS_DOMAIN/_api/web/GetFileByServerRelativeUrl('/Documents/VCAC-document.docx')/Versions" jsonReply = Await http.QuickGetStrAsync(url) If (http.LastMethodSuccess <> True) Then Debug.WriteLine(http.LastErrorText) Exit Sub End If json.Load(jsonReply) Debug.WriteLine(json.Emit()) ' The Versions JSON reply looks like this: ' { ' "d": { ' "results": [ ' { ' "__metadata": { ' "id": "a8d025e2-8255-4487-9edb-9e796ab2889c", ' "type": "SP.FileVersion" ' }, ' "CreatedBy": { ' "__deferred": { ' "uri": "https://SHAREPOINT_HTTPS_DOMAIN/_api/CreatedBy" ' } ' }, ' "CheckInComment": "", ' "Created": "2016-03-15T02:22:26Z", ' "ID": 1, ' "IsCurrentVersion": false, ' "Size": 21082, ' "Url": "_vti_history/1/Documents/VCAC-document.docx", ' "VersionLabel": "0.1" ' }, ' { ' "__metadata": { ' "id": "8ab3eadd-9126-4f65-a2a3-3b0689c592d6", ' "type": "SP.FileVersion" ' }, ' "CreatedBy": { ' "__deferred": { ' "uri": "https://SHAREPOINT_HTTPS_DOMAIN/_api/CreatedBy" ' } ' }, ' "CheckInComment": "", ' "Created": "2016-03-15T05:28:24Z", ' "ID": 2, ' "IsCurrentVersion": false, ' "Size": 21082, ' "Url": "_vti_history/2/Documents/VCAC-document.docx", ' "VersionLabel": "0.2" ' } ' ] ' } ' } ' ' Get each VersionLabel, Size, and Url... Dim numVersions As Integer = json.SizeOfArray("d.results") Dim i As Integer = 0 While i < numVersions json.I = i Debug.WriteLine("---- i = " & i) Debug.WriteLine("VersionLabel: " & json.StringOf("d.results[i].VersionLabel")) Debug.WriteLine("Url: " & json.StringOf("d.results[i].Url")) Debug.WriteLine("Size: " & json.IntOf("d.results[i].Size")) i = i + 1 End While ' The output is: ' ---- i = 0 ' VersionLabel: 0.1 ' Url: _vti_history/1/Documents/VCAC-document.docx ' Size: 21082 ' ---- i = 1 ' VersionLabel: 0.2 ' Url: _vti_history/2/Documents/VCAC-document.docx ' Size: 21082 |
© 2000-2022 Chilkat Software, Inc. All Rights Reserved.