Get web object from SharePoint using CSOM (PnP Core Component)

PnP core component contains the extension methods which help to achieve the SharePoint task in simple lines of code. So to know more about PnP Core component, have a look at “Introduction to PnP Core Component”.

WebExtensions.GetWeb (PnP Core Component) – This extension method returns the child web site based on the specified leaf url. For now, the retrieved the web site only returns the server relative url of the website.

Supports: SharePoint 2013+, SharePoint Online

Assembly: OfficeDevPnP.Core.dll
Namespace: Microsoft.SharePoint.Client

Method:

Web GetWeb( string leafUrl )

Returns Web object.

Syntax:
Single Line Code: Web.GetWeb(“subsiteurl”)

Code Snippet:

The following example returns the child site’s server relative url..

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Microsoft.SharePoint.Client;
using OfficeDevPnP.Core;

namespace PnPSitesCore.Samples
{
 class Program
 {
 static void Main(string[] args)
 {
 string siteUrl = "https://sharepointonline.sharepoint.com";

 AuthenticationManager authManager = new AuthenticationManager();

 //Interactive Login to SharePoint site - Opens a Online signin page to authenticate the user
 var context = authManager.GetWebLoginClientContext(siteUrl);

 Web oweb = context.Web.GetWeb("subsite");
 Console.WriteLine(oweb.ServerRelativeUrl);

 Console.WriteLine("Press any key to exit.");
 Console.ReadKey();
 } 
 }
}

The above code also available from GitHub.

Note: The returned Web object returns only the Server-Relative URL property. If we access other properties from the object, that returns field or property not initialized error.

Leave a Reply

Your email address will not be published. Required fields are marked *