Kentico Xperience 13 documentation and ASP.NET Core

Most documentation about running Xperience applications under ASP.NET Core can be found in a dedicated section: Developing Xperience applications using ASP.NET Core. The rest of the documentation still applies, but some code samples and scenarios might need slight modifications for Core projects.

All major differences between the MVC 5 and Core platforms are summarized in Migrating to ASP.NET Core.


Displaying SharePoint data on the live site

If you have data stored on a SharePoint Online server, Xperience enables you to retrieve this data and include it on your live site – you can display images and provide download links for files.

After you configure a SharePoint integration connection, you can display SharePoint data using the API within the CMS.SharePoint namespace:

  1. In Visual Studio, open your project and navigate to where you want to display the data.
  2. In the code, get an instance of a SharePoint service using a configured SharePoint integration connection.

    using System.Data;
    using CMS.SharePoint;
    // Use the code name of your SharePoint connection and the code name of your site
    SharePointConnectionInfo connectionInfo = SharePointConnectionInfoProvider.GetSharePointConnectionInfo("ConnectionCodename", "SiteName");
    ISharePointListService service = SharePointServices.GetService<ISharePointListService>(connectionInfo.ToSharePointConnectionData());
  3. Retrieve a set of SharePoint data. To obtain the name of a SharePoint library, open your SharePoint server, go to the Site Contents tab and use the library name as specified in the Name column. Do not use the code name of a library from the SharePoint application in the Xperience administration interface.

    DataSet images = service.GetListItems("SharePointLibraryName");
  4. Iterate through the data and retrieve URLs from the FileRef row using the GetSharePointFileUrl method.

    SharePointUrlProvider sharePointUrlProvider = new SharePointUrlProvider(connectionInfo.SharePointConnectionName);
    foreach (DataRow row in images.Tables[0].Rows)
    	// Retrieves the URL of a piece of data, which you can now process, e.g. by passing it to a model
        string fileUrl = sharePointUrlProvider.GetSharePointFileUrl(row["FileRef"].ToString());
    	// You can also access other available metadata
    	string fileTitle = row["Title"].ToString()
  5. Use the retrieved URLs to display the content on your website (for example, use a model class to pass the URLs to a view).

If you want to see a sample implementation of a SharePoint integration, visit Example - Displaying a SharePoint picture library.

Was this page helpful?