Kentico CMS provides two development models and you can choose which one suits you better:
• | Portal Engine - this model allows you to build websites using a portal engine. It's the recommended way for most developers since it doesn't require programming in Visual Studio. Instead, you can simply build websites using web parts in the browser-based user interface. |
• | ASPX Templates - this model can be chosen by advanced ASP.NET developers who prefer to create websites using standard ASP.NET architecture and using standard development tools, such as Visual Studio. This model requires that you are familiar with ASP.NET development and have at least basic programming knowledge of C# or VB.NET. |
Both approaches are fully supported and they provide the same level of flexibility and extensibility. We recommend that you use the portal engine model, but if you're an advanced .NET developer and do not trust portal engines, you may want to use ASPX templates.
The following table compares portal engine and ASPX templates:
|
Portal Engine |
ASPX Template |
||||||||||
How you work |
You build website using the browser-based interface.
No programming knowledge is required for common tasks. |
You build ASPX pages in Visual Studio.
At least basic programming knowledge of ASP.NET and either C# or VB.NET is required. |
||||||||||
How you assemble pages |
You use built-in or custom web parts that you place into customizable page layouts (HTML code with placeholders for web parts). |
You use built-in or custom ASP.NET server controls that are placed on the ASPX pages. You can also use the code behind files - these are standard ASPX pages and they are part of the website project that you can open in Visual Studio.
You can also place web parts (which are actually ASCX user controls) on the page templates if the appropriate server control is not available. |
||||||||||
Master pages and visual inheritance |
Sub-pages inherit the content from the parent pages by default (so called "visual inheritance"). The inheritance can be optionally broken if you want to create a page without parent content. |
All page templates may use a master page, which is a standard ASP.NET 2.0 master page.
The pages do not inherit content from their parents, they only inherit content from the master page (if it's used). |
||||||||||
Custom code integration and extensibility |
You can create your own user controls (ASCX) and web parts (ASCX with specific interface) in Visual Studio if you need to integrate some custom functionality.
You can add any custom controls and code to the web parts or user controls that you use on your website. |
You build standard ASPX pages with codebehind which means you can put any custom controls and code to the page in Visual Studio as you normally do.
|
||||||||||
Advantages |
|
|
||||||||||
Disadvantages |
|
|
Is Kentico CMS just another portal engine?
Now you may wonder what the difference between Kentico CMS and DotNetNuke or Rainbow Portal is.
Well, the main difference is the flexibility. Kentico CMS gives you full control over:
• | site structure |
• | site navigation |
• | page layout |
• | design |
• | content structure |
Also, it's important to explain that Kentico CMS is a content management system, not only a portal engine. It means it provides features of advanced CMS systems, such as:
• | content repository using a logical tree hierarchy for all types of content - see Where is the content stored? for details |
• | content/design separation |
• | custom document types with custom fields |
• | workflow and versioning |
• | content locking (check-out, check-in) |
• | multilingual content |
• | content preview and content staging |
• | document-level permissions with permission inheritance |
• | full-text search in all content |
• | document management features for uploaded files |
Moreover, Kentico CMS comes with many professional and flexible built-in modules out-of-the-box, including:
• | Newsletters |
• | On-line forms |
• | Forums |
• | E-commerce |
• | Content Staging |
• | Image gallery |
• | Blogs |
• | Polls |
• | Web analytics |
• | Reporting |
It means you do not need to obtain or purchase third-party modules with inconsistent user and programming interface, but you get everything from a single source, with complete documentation and support.
Page url: http://devnet.kentico.com/docs/devguide/index.html?portal_templates_vs_aspx_templates.htm