Both N2 CMS and DNN are popular CMS frameworks based on ASP.NET technology. What are these differences and similarities between them?
Similarities:
- They both have page and page content management function
- They both have user management function
- They both have file upload and management function
- Support page order adjustment
- Support multi Portal simultaneously
- They both have zone concept
- Support Localization
- Support SEO data management
Differences:
A. Authorities:
N2 is authorized to manage up to page level, while DNN can manage up to page module level. N2 doesn’t support definition of new role/user group, while DNN does.
B. Overall appearance of website (Skin/Container)
DNN allows custom skin and container management, while N2 can implement Master Page switch only by modifying configuration or page since its Skin and Container management is based on standard ASP.NET 2.0 technology.
C. Development technology
DNN can develop based on Web Form technology only; while N2, thanks to its flexible framework design, can develop based on either Web Form technology or ASP.NET MVC framework technology.
D. Data accessing method
From standard SQL Provider manner to various ORM tools and Web Service technology, DNN needs you to consider which is the specific method to implement with and what are the specific details to be implemented; N2, on the other hand, doesn’t need you to think about these, the methods of how to operate data specifically are encapsulated by framework.
E. Design & Coding
The framework design of N2 enables developers to concentrate on design of data model and data presentation interface, and there is no need to think of data editing, checking and saving; while those should be thought over in DNN.
F. Installation & Deployment
DNN allows installing the same module on different Hosts with its perfect module management function, while N2 has no such concept.
G. Miscellaneous:
There are totally 4 tables in the database of N2 system:
- n2AllowedRole
- n2Detail
- n2DetailCollection
- n2Item
All kinds of page objects are saved in these 4 tables as data, N2 can access these data using N-Hibernate technology and do the conversion between data and objects.
The framework design of N2 system guarantee a relative low coupling rate between interface and the data, that makes N2 has powerful UI expression force. Basically, N2 system can completely implement the corresponding details as long as you have the HTML template designed.
Meanwhile, DNN is not as powerful as N2 regarding UI expression force because its interface is limited by the interface specification of itself. For instance, DNN’s ability to customize Menu appearance is relatively weak; generally it can only be achieved by adjusting CSS, there is no way to control more details.
The development cycle of N2 site is much shorter than that of DotNetNuke technology based site since there’s no need to think of data editing interface during N2 development.
Because of the above characteristics, N2 is regarded as a lightweight CMS system.
Conclusion:
N2 system is more suitable for website with small data volume, especially those with strict demand on interface appearance.
DotNetNuke is more suitable for Web application with large volume of data applied.