dotnetnukedotnetnuke-6dotnetnuke-7

Initializing a NotificationController in DNN 7


How do you initialize a NotificationController in DNN 7.1.2?

I've tried:

var nc = new DotNetNuke.Services.Social.Notifications.NotificationController();

However this is empty and has no methods to call... Am I initializing the wrong thing?

Surely there should be something in there other than ToString, GetType, Equals and GetHashCode

I need to be able to create NotificationTypes and create Notifications.

Thanks


Solution

  • You can use NotificationsController.Instance.SendNotification method to send notifications. Here is the example:

    var notificationType = NotificationsController.Instance.GetNotificationType("HtmlNotification");
    var portalSettings = PortalController.GetCurrentPortalSettings();
    var sender = UserController.GetUserById(portalSettings.PortalId, portalSettings.AdministratorId);
    
    var notification = new Notification {NotificationTypeID = notificationType.NotificationTypeId, Subject = subject, Body = body, IncludeDismissAction = true, SenderUserID = sender.UserID};
    NotificationsController.Instance.SendNotification(notification, portalSettings.PortalId, null, new List<UserInfo> { user });
    

    This will send notification to a specific user.