Query forums
This topic contains the following:
- Querying a single forum
- Querying forums from a group
- Querying all forum
Querying a single forum
To query a single forum, you must perform the following:
- Get an instance of the manager.
Get an instance of theForumsManagerobject. - Get the specified forum.
To get the specified forum, you can either call theGetForummethod of the manager and pass the ID of the forum as an argument, or call theGetForumsmethod of the manager and filter the collection by the ID or the name of the forum.
Here is a code example of using the GetForum method:
C#
using System;
using Telerik.Sitefinity.Forums;
using Telerik.Sitefinity.Forums.Model;
namespace SitefinityWebApp
{
public class QueryForums_GetForum
{
public static Forum GetForum(Guid forumId)
{
ForumsManager forumsManager = ForumsManager.GetManager();
Forum forum = forumsManager.GetForum(forumId);
return forum;
}
}
}
NOTE: If the forum does not exist, the method throws an exception of type
Telerik.Sitefinity.SitefinityExceptions.ItemNotFoundException.
Here is a code example of using the GetForums method:
C#
using System;
using System.Linq;
using Telerik.Sitefinity.Forums;
using Telerik.Sitefinity.Forums.Model;
namespace SitefinityWebApp
{
public class QueryForums_GetForumAlternative
{
public static Forum GetForumAlternative(Guid forumId)
{
ForumsManager forumsManager = ForumsManager.GetManager();
Forum forum = forumsManager.GetForums().Where(g => g.Id == forumId).SingleOrDefault();
return forum;
}
}
}
Querying all forums from a group
To query all forums from a forum, you must perform the following:
- Get an instance of the manager.
Get an instance of theForumsManagerobject. - Get the forums.
To get the forums, you must call theGetForumsmethod of the manager and filter the query by the ID of the group.
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 QueryForums_GetForumsByGroup
{
public static List<Forum> GetForumsByGroup(Guid groupId)
{
ForumsManager forumsManager = ForumsManager.GetManager();
List<Forum> forums = forumsManager.GetForums().Where(f => f.Group != null && f.Group.Id == groupId).ToList();
return forums;
}
}
}
NOTE: Because it is possible to have a forum without a group, you must make a check whether the Group property is null.
Querying all forums
To query all forums, you must perform the following:
- Get an instance of the manager.
Get an instance of theForumsManagerobject. - Get the forums.
To get the forums, you must call theGetForumsmethod 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 QueryForums_GetForums
{
public static List<Forum> GetForums()
{
ForumsManager forumsManager = ForumsManager.GetManager();
List<Forum> forums = forumsManager.GetForums().ToList();
return forums;
}
}
}
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.