1 out of 2 rated this helpful - Rate this topic

SharePoint Client Object Creation

SharePoint 2010

Published: May 2010

This topic describes creating a SharePoint 2010 client object.

Available in SharePoint Online

If a client object can be created, such as a List object (JavaScript: List), its corresponding client object collection, such as ListCollection (JavaScript: ListCollection), has an Add method that accepts a ClientObjectCreationInformation object, for example, ListCreationInformation (JavaScript: ListCreationInformation), which contains all the information required to create the new object.

The following example uses WebCreationInformation (JavaScript: WebCreationInformation) with the Add(WebCreationInformation) method (JavaScript: add(parameters)) to create a child Web site under a specified Web site .

Dim clientContext As New ClientContext("http://MyServer/sites/MySiteCollection/MyWebSite")
Dim collWeb As WebCollection = clientContext.Web.Webs
         
Dim webCreationInfo As New WebCreationInformation()
webCreationInfo.Title = "My New Web Site"
webCreationInfo.Description = "Description of new Web site..."
webCreationInfo.Language = 1033
webCreationInfo.Url = "MyNewWebSite"
webCreationInfo.UseSamePermissionsAsParentSite = True
webCreationInfo.WebTemplate = "STS#0"
         
Dim oNewWebsite As Web = collWeb.Add(webCreationInfo)
clientContext.ExecuteQuery()

In the previous example, the Add(WebCreationInformation) method (JavaScript: add(parameters)) creates a Web site immediately in the client object collection, without waiting for subsequent collection data retrieval or for a call to ExecuteQuery or ExecuteQueryAsync(ClientRequestSucceededEventHandler, ClientRequestFailedEventHandler) (JavaScript: executeQueryAsync(succeededCallback, failedCallback)).

You can use a ClientObjectCreationInformation object to create numerous objects. Creating a navigation node, for example, also involves using a ClientObjectCreationInformation object. The following example defines a navigation node by means of a NavigationNodeCreationInformation object (JavaScript: NavigationNodeCreationInformation), and uses this object to add a link within the Quick Launch area of the specified Web site. The example adds a link to a list on another Web site as the second child node under the top-level Lists node.

Dim clientContext As New ClientContext("http://MyServer/sites/MySiteCollection/MyWebSite")
         
Dim collNavNode As NavigationNodeCollection = clientContext.Web.Navigation.QuickLaunch
         
clientContext.Load(collNavNode)
clientContext.ExecuteQuery()
         
Dim collChildNavNode As NavigationNodeCollection = collNavNode(1).Children
         
clientContext.Load(collChildNavNode)
clientContext.ExecuteQuery()
         
Dim navNodeCreationInfo As New NavigationNodeCreationInformation()
         
navNodeCreationInfo.PreviousNode = collChildNavNode(0)
navNodeCreationInfo.Title = "My Navigation Node"
navNodeCreationInfo.Url = "http://MyServer/sites/MySiteCollection/MyTargetListWebSite/Lists/MyTargetList/AllItems.aspx"
         
collChildNavNode.Add(navNodeCreationInfo)
         
clientContext.ExecuteQuery()

The previous example creates a link to another Web site within a site collection. To create an external link to a location outside the site collection, set the IsExternal property (JavaScript: IsExternal) of the NavigationNodeCreationInformation object (JavaScript: NavigationNodeCreationInformation) to true before you call the Add(NavigationNodeCreationInformation) method (JavaScript: add(parameters)).

For information about creating client objects in the context of a Silverlight application, see Using the Silverlight Object Model.

Date

Description

May 2010

Initial publication

Did you find this helpful?
(1500 characters remaining)

Community Additions

ADD
© 2013 Microsoft. All rights reserved.