Learn More





DNN Community Blog

The Community Blog is a personal opinion of community members and by no means the official standpoint of DNN Corp or DNN Platform. This is a place to express personal thoughts about DNNPlatform, the community and its ecosystem. Do you have useful information that you would like to share with the DNN Community in a featured article or blog? If so, please contact .

The use of the Community Blog is covered by our Community Blog Guidelines - please read before commenting or posting.

Developing On The DNN Platform

Back in May, Joe Brinkman and I hosted a webinar titled "Developing On The DNN Platform" which was focused on providing guidance to developers on how to easily create modules and add custom functionality to your website. We promised that we would share the code and unfortunately it has taken longer than expected to get it published. So I am happy to announce that the DNN Mailing List module, which was the example used in our webinar, is now available for download.

The DNN Mailing List module allows you to post messages to an Activity Stream using standard email and allows users to subscribe to the Activity Stream so they receive notifications of new messages when they are posted. This effectively creates a functional Mailing List for the members of your site. The module can be either utilized at the site level or associated to individual Social Groups.

Once you install the module in your site, you can add an instance of it to any page which has an Activity Stream (Journal) module. This includes standard site pages, or Group Activity pages. Once the Mailing List module instance is added, you can click the Configure button to specify the various options. You can specify whether you want your users to receive Notifications of new items posted to the list and whether they are automatically subscribed or must opt-in. You can also specify a unique IMAP email address that will allow users to post messages using a standard email client. Security options exist to control who is allowed to post via email and set the visibility of the messages.

Once the module is configured with IMAP server settings, you can send standard email to the associated address. You can optionally enclose your message in square brackets so that the system can easily identify the content you wish to post.

The system will monitor the email account on a continuous basis to retrieve any new messages and post them in the Activity Stream. Once messages are posted in the Activity Stream you can use the standard DNN site search capability to easily find them in the future. Using the Subscribers option, a user can opt-in to receive Notifications of new messages.

Notifications are available in your User Profile and depending on digest settings, you will receive them via email immediately or as a batch. You have the ability to Reply By Email directly from the message which will add your response as a Comment to the original entry in the Activity Stream.

This module was built in VB.NET using the DNN Module Creator and utilizes a dynamic methodology ( ie. no project files or pre-compilation is required because the class files are all located in the App_Code folder ). It contains a variety of source code examples including:

  • how to implement services using Web API
  • how to use various aspects of the Social API including Journal and Notifications
  • how to create a Schedule Job
  • how to use the ActionLink control
  • how to leverage third party components
  • how to interface with an IMAP email server
  • how to use DNN design patterns and modal dialogs
  • how to call stored procedures using DAL2
  • how to suppress the display of a module based on custom logic
  • how to create an Install and Uninstall database script

We hope you find this module to be useful in managing your online communities as well as a good reference example on how to extend the DNN Platform with custom functionality.


Jay Mathis
Nice demo module Shaun. Lots of good examples in there for module developers to learn from.
Jay Mathis Monday, July 21, 2014 10:14 AM (link)

Comment Form

Only registered users may post comments.


2sic Daniel Mettler (124)
Aderson Oliveira (15)
Alec Whittington (11)
Alex Shirley (10)
Andrew Nurse (30)
Anthony Glenwright (5)
Antonio Chagoury (28)
Ash Prasad (21)
Ben Schmidt (1)
Benjamin Hermann (25)
Benoit Sarton (9)
Beth Firebaugh (12)
Bill Walker (36)
Bob Kruger (5)
Brian Dukes (2)
Brice Snow (1)
Bruce Chapman (20)
Bryan Andrews (1)
cathal connolly (55)
Charles Nurse (163)
Chris Hammond (203)
Chris Paterra (55)
Clinton Patterson (28)
Cuong Dang (21)
Daniel Bartholomew (2)
Dave Buckner (2)
David Poindexter (3)
David Rodriguez (2)
Doug Howell (11)
Erik van Ballegoij (30)
Ernst Peter Tamminga (74)
Geoff Barlow (6)
Gifford Watkins (3)
Gilles Le Pigocher (3)
Ian Robinson (7)
Israel Martinez (17)
Jan Blomquist (2)
Jan Jonas (3)
Jaspreet Bhatia (1)
Jenni Merrifield (6)
Joe Brinkman (269)
John Mitchell (1)
Jon Henning (14)
Jonathan Sheely (4)
Jordan Coopersmith (1)
Joseph Craig (2)
Kan Ma (1)
Keivan Beigi (3)
Ken Grierson (10)
Kevin Schreiner (6)
Leigh Pointer (31)
Lorraine Young (60)
Malik Khan (1)
Matthias Schlomann (15)
Mauricio Márquez (5)
Michael Doxsey (7)
Michael Tobisch (3)
Michael Washington (202)
Mike Horton (19)
Mitchel Sellers (28)
Nathan Rover (3)
Navin V Nagiah (14)
Néstor Sánchez (31)
Nik Kalyani (14)
Peter Donker (52)
Philip Beadle (135)
Philipp Becker (4)
Richard Dumas (22)
Robert J Collins (5)
Roger Selwyn (8)
Ruben Lopez (1)
Ryan Martinez (1)
Salar Golestanian (4)
Sanjay Mehrotra (9)
Scott McCulloch (1)
Scott S (11)
Scott Wilkinson (3)
Scott Willhite (97)
Sebastian Leupold (80)
Shaun Walker (237)
Shawn Mehaffie (17)
Stefan Cullmann (12)
Stefan Kamphuis (12)
Steve Fabian (31)
Timo Breumelhof (24)
Tony Henrich (3)
Torsten Weggen (2)
Vicenç Masanas (27)
Vincent Nguyen (3)
Vitaly Kozadayev (6)
Will Morgenweck (37)
Will Strohl (163)
William Severance (5)
Try Evoq
For Free
Start Free Trial
a Demo
See Evoq Live
Need More Information?