Query video libraries

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

Query a single video library

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

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

The following code samples query a video library by its ID:

Native API

C#
using System;
using System.Linq;
using Telerik.Sitefinity.Libraries.Model;
using Telerik.Sitefinity.Modules.Libraries;

namespace SitefinityWebApp
{
   public class QueryVideoLibraries_GetVideoLibraryNativeAPI
   {
       private VideoLibrary GetVideoLibraryNativeAPI(Guid videoLibraryId)
       {
           LibrariesManager librariesManager = LibrariesManager.GetManager();
           VideoLibrary library = librariesManager.GetVideoLibraries().Where(b => b.Id == videoLibraryId).FirstOrDefault();

           return library;
       }
   }
}

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

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

C#
using System;
using Telerik.Sitefinity.Libraries.Model;
using Telerik.Sitefinity.Modules.Libraries;

namespace SitefinityWebApp
{
   public class QueryVideoLibraries_GetVideoLibraryNativeAPI2
   {
       private VideoLibrary GetVideoLibraryNativeAPI(Guid videoLibraryId)
       {
           LibrariesManager librariesManager = LibrariesManager.GetManager();
           VideoLibrary library = librariesManager.GetVideoLibrary(videoLibraryId);

           return library;
       }
   }
}

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

Fluent API

C#
using System;
using Telerik.Sitefinity;
using Telerik.Sitefinity.Libraries.Model;

namespace SitefinityWebApp
{
   public class QueryVideoLibraries_GetVideoLibraryFluentAPI
   {
       private VideoLibrary GetVideoLibraryFluentAPI(Guid videoLibraryId)
       {
           return App.WorkWith().VideoLibrary(videoLibraryId).Get();
       }
   }
}

First, you get the singular facade of the video library with the specified ID. To get an instance of the video library, you call the Get method of the facade.

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

C#
using System;
using System.Linq;
using Telerik.Sitefinity;
using Telerik.Sitefinity.Libraries.Model;

namespace SitefinityWebApp
{
   public class QueryVideoLibraries_GetVideoLibraryFluentAPI2
   {
       private VideoLibrary GetVideoLibraryFluentAPI(Guid videoLibraryId)
       {
           VideoLibrary library = App.WorkWith().VideoLibraries().Where(l => l.Id == videoLibraryId).Get().SingleOrDefault();

           return library;
       }
   }
}

Query all video libraries

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

  1. Query all video libraries.
    First, get a query of all available video libraries.
  2. Return a list of video libraries.

The following code samples query all video libraries:

Native API

C#
using System.Collections.Generic;
using System.Linq;
using Telerik.Sitefinity.Libraries.Model;
using Telerik.Sitefinity.Modules.Libraries;

namespace SitefinityWebApp
{
   public class QueryVideoLibraries_GetAllVideoLibrariesNativeAPI
   {
       private List<VideoLibrary> GetAllVideoLibrariesNativeAPI()
       {
           LibrariesManager librariesManager = LibrariesManager.GetManager();

           return librariesManager.GetVideoLibraries().ToList();
       }
   }
}

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

Fluent API

C#
using System.Collections.Generic;
using System.Linq;
using Telerik.Sitefinity;
using Telerik.Sitefinity.Libraries.Model;

namespace SitefinityWebApp
{
   public class QueryVideoLibraries_GetAllVideoLibrariesFluentAPI
   {
       private List<VideoLibrary> GetAllVideoLibrariesFluentAPI()
       {
           return App.WorkWith().VideoLibraries().Get().ToList();
       }
   }
}

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

Want to learn more?
Enhance your Sitefinity skills by enrolling in free training sessions. Become Sitefinity certified through Progress Education Community to strengthen your professional credentials.