Query document libraries

The examples below show you how to query all of the available document libraries or how to query only a specific document library by its ID.

Query a single document library

To query a specific document library by its ID, you must perform the following:

  1. Get the document library.
    First, get an instance of the document library with the specified ID.
  2. Return the document library.

The following code samples query a document library by its ID.

Native API

using System;
using System.Linq;
using Telerik.Sitefinity.Libraries.Model;
using Telerik.Sitefinity.Modules.Libraries;
namespace SitefinityWebApp
{
public class QueryDocumentLibraryNativeAPI
{
private DocumentLibrary GetDocumentLibraryNativeAPI(Guid documentLibraryId)
{
LibrariesManager librariesManager = LibrariesManager.GetManager();
DocumentLibrary library = librariesManager.GetDocumentLibraries().Where(l => l.Id == documentLibraryId).FirstOrDefault();
return library;
}
}
}

First, you get an instance of the LibrariesManager class. To get the specified document library, you query all document libraries and filter the collection by the Id property. If the specified document library does not exist, the query will return null. Finally, you return the document library.

You can also use the following code to retrieve the document library:

using System;
using Telerik.Sitefinity.Libraries.Model;
using Telerik.Sitefinity.Modules.Libraries;
namespace SitefinityWebApp
{
public class QueryDocumentLibraryNativeAPI2
{
private DocumentLibrary GetDocumentLibraryNativeAPI(Guid documentLibraryId)
{
LibrariesManager librariesManager = LibrariesManager.GetManager();
DocumentLibrary library = librariesManager.GetDocumentLibrary(documentLibraryId);
return library;
}
}
}

NOTE: If the document library does not exist, an exception of type ItemNotFoundException is thrown.

Fluent API

using System;
using Telerik.Sitefinity;
using Telerik.Sitefinity.Libraries.Model;
namespace SitefinityWebApp
{
public class QueryDocumentLibraryFluentAPI
{
private DocumentLibrary GetDocumentLibraryFluentAPI(Guid documentLibraryId)
{
return App.WorkWith().DocumentLibrary(documentLibraryId).Get();
}
}
}

First, you get the singular facade of the document library with the specified Id. To get an instance of the document library, you call the Getmethod of the facade.

You can also use the following code to retrieve the document library:

using System;
using Telerik.Sitefinity;
using Telerik.Sitefinity.Libraries.Model;
using System.Linq;
namespace SitefinityWebApp
{
public class QueryDocumentLibraryByIDFluentAPI
{
private DocumentLibrary GetDocumentLibraryFluentAPI(Guid documentLibraryId)
{
DocumentLibrary library = App.WorkWith().DocumentLibraries().Where(l => l.Id == documentLibraryId).Get().SingleOrDefault();
return library;
}
}
}

Query all document libraries

When querying all document libraries, you must perform the following:

  1. Query all document libraries.
    First, get a query of all available document libraries.
  2. Return the document libraries.

The following code queries all document libraries:

Native API

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Telerik.Sitefinity.Libraries.Model;
using Telerik.Sitefinity.Modules.Libraries;
namespace Telerik.Sitefinity.Documentation.CodeSnippets.DevGuide.SitefinityEssentials.Modules.MediaModules.DocumentsAndFiles.ManagingLibraries
{
public partial class LibrariesSnippets
{
private List<DocumentLibrary> GetAllDocumentLibrariesNativeAPI()
{
LibrariesManager librariesManager = LibrariesManager.GetManager();
return librariesManager.GetDocumentLibraries().ToList();
}
}
}

First, you get an instance of the LibrariesManager class. Then, you query all available document libraries. Finally, you return the document libraries as a list. If no document libraries exist, the list will be empty.

Fluent API

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Telerik.Sitefinity.Libraries.Model;
namespace Telerik.Sitefinity.Documentation.CodeSnippets.DevGuide.SitefinityEssentials.Modules.MediaModules.DocumentsAndFiles.ManagingLibraries
{
public partial class LibrariesSnippets
{
private List<DocumentLibrary> GetAllDocumentLibrariesFluentAPI()
{
return App.WorkWith().DocumentLibraries().Get().ToList();
}
}
}

First, you get an instance of the plural document libraries facade. Then, you get all available document libraries. Finally, you return the document libraries as a list. If no document libraries exist, the list will be empty.

Want to learn more?

Increase your Sitefinity skills by signing up for our free trainings. Get Sitefinity-certified at Progress Education Community to boost your credentials.

Get started with Integration Hub | Sitefinity Cloud | Sitefinity SaaS

This free lesson teaches administrators, marketers, and other business professionals how to use the Integration hub service to create automated workflows between Sitefinity and other business systems.

Web Security for Sitefinity Administrators

This free lesson teaches administrators the basics about protecting yor Sitefinity instance and its sites from external threats. Configure HTTPS, SSL, allow lists for trusted sites, and cookie security, among others.

Foundations of Sitefinity ASP.NET Core Development

The free on-demand video course teaches developers how to use Sitefinity .NET Core and leverage its decoupled architecture and new way of coding against the platform.

Was this article helpful?