Kentico CMS 7.0 Tutorial  

Site development overview

Site development overview

Previous topic Next topic Mail us feedback on this topic!  

Site development overview

Previous topic Next topic JavaScript is required for the print function Mail us feedback on this topic!  

Kentico CMS provides two basic 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 and using Visual Studio. You can easily build websites using web parts in the browser-based user interface.
 
tutorial_clip0037

 

ASPX Templates - this model can be chosen by advanced ASP.NET developers who prefer to create the website using standard ASP.NET architecture and using standard development tools, such as Visual Studio. You need to be familiar with ASP.NET development and have at least basic programming knowledge of C# or VB.NET.
 
tutorial_clip0035

 

Both approaches are fully supported and they provide the same level of flexibility and extensibility. We recommend using the portal engine, but if you are an advanced .NET developer or wish to integrate existing functionality built on standard ASP.NET architecture, you may want to use ASPX templates. It is also possible to create websites or specific pages using the Model-View-Controller architectural pattern (based on the ASP.NET MVC framework), but this is beyond the scope of this basic tutorial. Please see the MVC development model chapter in the Developer's Guide for more information.

 

If required, the available development models can be combined on a single website. For example, you can integrate ASPX templates into a portal engine website, or even custom ASPX pages implementing your own applications. On the other hand, special areas may be defined on ASPX templates where editing can be done through the portal engine.

 

The following table compares the portal engine and ASPX templates:

 

 

Portal Engine

ASPX Template

How you work

You build websites and design their pages using a browser‑based interface.

 

No programming knowledge is required for common tasks.

You build ASPX pages (web forms) that are used to display content from Kentico CMS.

 

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.

You use built-in or custom ASP.NET server controls and place them onto the ASPX pages. These are standard ASPX pages that are part of the web project, so you can also work with their code behind files.

 

It is also possible to place web parts (which are actually ASCX user controls) on the page templates if the required server control is not available.

Master pages and visual inheritance

Sub-pages inherit content from their parent pages by default (so called "visual inheritance"). The inheritance can optionally be broken if you want to create a page without parent content.

Page templates may inherit content from a master page, which works just like a standard ASP.NET master page (.master file).

 

Pages do not inherit content from their parents in the website content hierarchy, they only inherit from the master page (if it is used).

Custom code integration and extensibility

You can create your own user controls or web parts (ASCX files with a portal engine interface) if you need to integrate custom functionality.

 

Any custom controls or code can be added to the web parts placed on the website.

 

You can also use standard ASPX pages within your portal engine-based website.

You build standard ASPX pages with code behind files, which means you can place any custom controls and code onto the page.

Advantages

Easier and faster to build a website.

ASP.NET programming knowledge is not required for common tasks.

You can build the whole website very quickly, using only a web browser.

Standard ASP.NET architecture.

You can use your favorite development tools, such as Visual Studio.

Disadvantages

Proprietary architecture and development process.

Requires ASP.NET programming knowledge.

The design of the web pages cannot be fully managed via the browser‑based administration interface.

 

 

InfoBox_Tip

 

Is Kentico CMS just another portal engine?

 

Now you may ask what's the difference between Kentico CMS and DotNetNuke or SharePoint.

 

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 provides features of advanced CMS systems, such as:

 

content repository with a logical tree hierarchy of documents

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, Staging, Image gallery, Event calendar, Events, Blogs, Polls and others

 

It means you do not need to purchase third-party modules with inconsistent user and programming interface, but you get everything from a single source, with complete documentation.

 

The rest of this tutorial explains the portal engine approach. If you want to use ASPX templates, please read the Tutorial for ASPX page templates.