.communities Features

.communities continues to build upon the original CSK/GCN/CASK Beta with major changes to both the source code and the database. .communities is now AJAX enabled and includes pre-built binaries from the latest AJAX Control Toolkit source - both the Administration site as well as all the community themes now contain AJAX functionality.

New Standards and Practices

All source code in .communities is now fully documented so that method summaries can be extracted using Sandcastle source documentation for example. Full source code documentation will be included with the final release and is also available to view online at the official .communities website.

The .NET 2.0 Provider Model is now used to access the datastore and .communities now implements a standard three-tier structure consisting of a Presentation Layer, Business Object Layer and a Data Access Layer.

Namespaces, object names and file locations have also been overhauled to create a more meaningful code structure. Namespaces are now grouped to their corresponding folder names so code with a namespace that ends with Framework.Components for example can be found in the Framework Project under the Components folder. All Business objects are in the root folder of their corresponding project and have been given meaningful names rather than <SomeObject>Info as was the case with previous releases.

New Functionality

The most significant new update is the Tasks Enterprise Library custom block. Using this feature, site administrators can specify long-running processes that run on a background thread, at a duration specified in the configuration file. Processes that currently use this application block include a task for sending queued e-mails, a site statistics task and a search indexing task.

Another major update is the inclusion of Membership and Role providers which allow administrators to create a .NET 2.0 membership database that can either be included with the .communities database or created separately. This allows for user details to be shared with other applications as well as support for single sign-on scenarios across all communities if required. User profiles are handled through the Profile provider model and allow for administrators to customise the user profile to display/store additional user information.

The community settings that were originally stored in the communities table have been modified so that they are now stored as serialised object XML data. This allows for developers to extend the community settings object to save customised settings as well as those required for .communities to run. Default community settings are stored in the /AppData_ folder as an XML file and can be modified as needed. When a new community is created, these settings are copied to the community and can be updated in the administration site.

There is now also the ability to choose a default text editor for .communities. The FCKEditor and TinyMCE editors are included in the implementation and is loaded at runtime via the ITextEditor interface. There is also the option for developers to plug-in different editors if required by inheriting from the ITextEditor interface.

Last edited May 20, 2007 at 5:17 PM by CSharpEd, version 1


No comments yet.