Query forum threads
This topic contains the following:
- Querying a single thread
- Querying threads from a forum
- Querying all threads
Querying a single thread
To query a single thread, you must perform the following:
- Get an instance of the manager.
Get an instance of theForumsManagerobject. - Get the specified thread.
To get the specified thread, you can either call theGetThreadmethod of the manager and pass the ID of the thread as an argument, or call theGetThreadsmethod of the manager and filter the collection by the ID or the name of the thread.
Here is a code example of using the GetThread method:
C#
using System;
using Telerik.Sitefinity.Forums;
using Telerik.Sitefinity.Forums.Model;
namespace SitefinityWebApp
{
public class QueryForumThreads_GetThread
{
public static ForumThread GetThread(Guid threadId)
{
ForumsManager forumsManager = ForumsManager.GetManager();
ForumThread thread = forumsManager.GetThread(threadId);
return thread;
}
}
}
NOTE: If the thread does not exist, the method throws an exception of type
Telerik.Sitefinity.SitefinityExceptions.ItemNotFoundException.
Here is a code example of using the GetThreads method:
C#
using System;
using System.Linq;
using Telerik.Sitefinity.Forums;
using Telerik.Sitefinity.Forums.Model;
namespace SitefinityWebApp
{
public class QueryForumThreads_GetThreadAlternative
{
public static ForumThread GetThreadAlternative(Guid threadId)
{
ForumsManager forumsManager = ForumsManager.GetManager();
ForumThread thread = forumsManager.GetThreads().Where(g => g.Id == threadId).SingleOrDefault();
return thread;
}
}
}
Querying all threads from a forum
To query all threads from a forum, you must perform the following:
- Get an instance of the manager.
Get an instance of theForumsManagerobject. - Get the threads.
To get the threads, you must call theGetThreadsmethod of the manager and filter the query by the ID of the forum.
Here is a code example:
C#
using System;
using System.Collections.Generic;
using System.Linq;
using Telerik.Sitefinity.Forums;
using Telerik.Sitefinity.Forums.Model;
namespace SitefinityWebApp
{
public class QueryForumThreads_GetThreadsByForum
{
public static List<ForumThread> GetThreadsByForum(Guid forumId)
{
ForumsManager forumsManager = ForumsManager.GetManager();
List<ForumThread> threads = forumsManager.GetThreads().Where(t => t.Forum != null && t.Forum.Id == forumId).ToList();
return threads;
}
}
}
NOTE: Because it is possible to have a thread without a forum, you must make a check whether the
Forumproperty is null.
Querying all threads
To query all threads, you must perform the following:
- Get an instance of the manager.
Get an instance of theForumsManagerobject. - Get the threads.
To get the threads, you must call theGetThreadsmethod of the manager.
Here is a code example:
C#
using System.Collections.Generic;
using System.Linq;
using Telerik.Sitefinity.Forums;
using Telerik.Sitefinity.Forums.Model;
namespace SitefinityWebApp
{
public class QueryForumThreads_GetThreads
{
public static List<ForumThread> GetThreads()
{
ForumsManager forumsManager = ForumsManager.GetManager();
List<ForumThread> threads = forumsManager.GetThreads().ToList();
return threads;
}
}
}
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.
Get started with Integration Hub | Sitefinity Cloud
This free lesson teaches administrators, marketers, and other business professionals how to use Sitefinity Integration Hub to create automated workflows between Sitefinity and other business systems.
Web Security for Sitefinity Administrators
This free lesson teaches administrators the basics about protecting your Sitefinity instance and your 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 ASP.NET Core and take advantage of its decoupled architecture and modern development model.