MVC developer starter kit
Ready to build amazing 'xperiences? This starter kit covers everything you need to know about developing websites in Kentico Xperience. Grab a coffee and find out how things work.
MVC replaces Portal Engine
Since version 8, Kentico has supported two different development models, Portal Engine and MVC. The MVC, or Model-View-Controller, offers more flexibility and support for modern technologies, and it is replacing Portal Engine based on the legacy ASP.NET Web Forms. Kentico Xperience 13 will support the MVC development model on .NET MVC and .NET Core.
Are you new to ASP.NET MVC?
- Get started with Microsoft's guide to MVC design pattern and separation of concerns
- Take the ASP.NET MVC 5 Fundamentals course on Pluralsight, which covers all the fundamentals
- Create your first ASP.NET MVC 5 application in a tutorial from Microsoft
- Is Dependency Injection new to you? Learn it in Getting started with Dependency Injection on Pluralsight. Or deep dive into the Dependency Injection in C# and .NET with the Autofac Library course on Udemy
Are you migrating a Portal Engine website to MVC?
- Use the MVC Transition guide
- Get the basics from the MVC frequently asked questions
- Read Matt Nield’s blog post about migrating from Portal Engine
- Hear how a partner planned their transition to MVC
- Check out how an agency boosted performance with a new website built in MVC
- Follow the steps to transform a Map widget for an MVC site
- Read this article to convert a Portal Engine Widget to an MVC Widget
- Get inspired by other MVC related blog posts
- Migrate basic objects, such as custom tables, media libraries, or custom classes, with the Import/Export feature
- The Import Toolkit will save you time when importing data from external SQL databases, CSV, and XML files
Get familiar with MVC.
- Explore must-have features in the Xperience brochure
- Start by installing Xperience on your local machine. The Dancing Goat MVC sample site will give you an idea of setting up an Xperience project. You can use it for reference while investigating the features mentioned on this page.
- The Getting started with Kentico Xperience video will walk you through setting up your computer, the database, and installing the application.
- A Kentico Xperience MVC website runs the live site(s) and the administration applications separately and connects them through a database. Read the documentation for a detailed explanation of the MVC development model.
- Learn more about the Xperience digital marketing features in the Resource hub for marketers
Learn about supported .NET frameworks.
- Kentico 12 and previous versions only support the full .NET Framework
- Xperience 13 will support both .NET Framework 4.8 and .NET Core 3.1. .NET Core will be recommended for the front-end application.
- 20 things developers should know about Xperience 13
- Be aware of the features no longer supported in Kentico Xperience
Developing websites in MVC
Before you start developing your first Xperience website, follow our online training courses and learn best practices and recommended approaches.
- The Developer tutorial will help you grasp the absolute basics of MVC. You will learn how Xperience stores website content and how you can display it on a live site.
- The Xperience MVC for developers course will teach you the most important things about implementing a front-end application
- The Essentials module explains the basics of creating a new application
- The Builders module shows you how to use Page Builder and Form Builder
- The Identity module helps you implement user management
- Xperience customization for developers will teach you how to customize the administration application’s built-in features and create your functionality
- Finally, go through Kentico Advantage. The project guide covers key concepts and best practices you need to know to navigate the process of building a project on Kentico Xperience. Kentico Advantage presents real-world scenarios to help you with planning, developing, deploying, and maintaining Kentico Xperience.
Short on training time?
If you don't have time to go through the training courses, we suggest you start with the developer tutorial and then investigate resources that introduce advanced features, such as Page Builder and Form Builder.
Page Builder features.
Page Builder’s MVC widgets and sections allow website administrators to edit page content and layouts in a WYSIWYG style. Find out what building pages with the Page Builder looks like this short video.
Building a page with MVC widgets
Check out how easy it is to create a landing page using MVC Widgets in Kentico.
Creating pages with editable areas
See how editable areas are implemented in the Dancing Goat MVC sample project in the Home’s Index.cshtml and HomeController.cs files.
Page Builder widgets
See the two approaches to coding MVC widgets as well as various widget samples in the Dancing Goat MVC project, e.g., a simple Testimonial widget in the TestimonialWidget.cshtml file registered through PageBuilderComponentRegister.cs, or a more complex _HeroImageWidget.cshtml view with a dedicated HeroImageWidgetController.cs controller.
Three-part series on Page Builder
MVC page templates
See how the templates are implemented in the _Article.cshtml and ArticlePageTemplateController.cs and the _ArticleWithSidebar.cshtml and ArticleWithSidebarPageTemplate
Controller.cs files in the Dancing Goat MVC sample project.
Form Builder features
Check out how Form Builder is implemented in the Dancing Goat MVC site:
The Contacts page shows how to display the Contacts form. The page is implemented in the Index.cshtml file (with _Address.cshtml and _SocialLinks.cshtml partial views) and the ContactsController.cs file.
Custom form component in the ContactGroupSelector.cshtml / ContactGroupSelectorComponent.csfile.
Dancing Goat MVC sample site
You’ll also see how it implements other features like digital marketing and commerce. Diving deep into the sample site is definitely worth your time!
- The Xperience MVC components GitHub repository contains ready to use Page Builder components.
- The Xperience Component Starter GitHub repository helps you start developing your MVC page builder components. It contains an MVC application with a sample widget, an inline editor, a form component, and a section.
You’ve gone through the absolute essentials, and you should now have a basic understanding of what it’s like to develop an MVC website on Kentico Xperience. These resources will help you on your development journey: