Introduction of CodeBehind Framework
Tags: tutorial, dotnet, beginners, backend
Published: 2024-05-26 21:00:25

In this tutorial series, we introduce the [CodeBehind framework](https://github.com/elanatframework/Code_behind) belonging to [Elanat](https://elanat.net). Elanat has dubbed the CodeBehind framework the .NET Diamond.

## What is CodeBehind Framework

CodeBehind is a new free and open-source back-end framework that works under .NET Core. CodeBehind is owned by Elanat and developed in 2023 by Mohammad Rabie. The first version of the CodeBehind framework is built on .NET Core version 7.0.

## Why was CodeBehind created

If we leave Blazor technology aside, two frameworks for creating web applications in .NET Core have been provided by Microsoft; one of them is ASP.NET Core MVC and the other is Razor Pages. Both these frameworks have complexity and hard dependencies. On the other hand, the CodeBehind framework inherits all the advantages of ASP.NET Core and gives it more simplicity, power and flexibility.

![CodeBehind Framework Inherits All The Advantages Of ASP.NET Core](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mb03om62z7z6zstw6hux.jpg)

These two frameworks have many structural weaknesses, their flexibility is low and their learning curve is hard. The Code Behind framework has a revolutionary MVC architecture for developing web systems that is easy to understand, has soft dependencies, and has high power and flexibility.

## Advantages of CodeBehind Framework

![Revolutionary And New Innovations In CodeBehind Framework](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/rtffvog7ypbbxtv4acfp.jpg)

The CodeBehind framework includes revolutionary and new innovations with a modern approach; some of the advantages of this framework are written below:

- **Fast**: The CodeBehind framework is faster than the default structure of cshtml pages in ASP.NET Core.
- **Simple**: Developing with CodeBehind is very simple. You can use mvc pattern or model-view or controller-view or only view.
- **Modular**: It is modular. Just copy the new project files, including dll and aspx, into the current active project.
- **Get output**: You can call the output of the aspx page in another aspx page and modify its output.
- **Under .NET Core**: Your project will still be under ASP.NET Core and you will benefit from all the benefits of .NET Core.
- **Code-Behind**: Code-Behind pattern will be fully respected.
- **Modern**: CodeBehind is a modern framework with revolutionary ideas.
- **Understandable**: View is preferable to controller and there is no need to set controllers in route.
- **Adaptable**: The CodeBehind framework can even be used with Razor Pages and ASP.NET Core MVC.



## Unique MVC architecture in CodeBehind

MVC is a design pattern that consists of three parts: model, view, and controller. View is the display part. Dynamic data models are placed in the view. Controllers are responsible for determining the view and model for requests.

Using the MVC Design Pattern In most MVC frameworks, controllers must be configured in the root routes. In this structure, the request reaches the route and the route recognizes the controller based on the text patterns and then calls the controller. The configuration of the controller is in the path of a poor process and the wrong structure, which is placed at the beginning of the request and response cycle and causes problems for that structure.

In the CodeBehind framework, the controller is specified in the attributes section of the View page.

MVC diagram in CodeBehind Framework

![Unique MVC Architecture in CodeBehind Framework](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/wfcw4ec524xhpoq8m81h.png)


## Knowledge prerequisites

In order to understand the concepts of this educational series, you must know a C-family (C#, JAVA or etc) programming language and also know HTML.

> Please note that we do not teach you programming in this tutorial series.

## Minimum required hardware and software

**Hardware**
In order for your system to run smoothly during this tutorial series, your system should be at least DDR3 or better.

CPU: Our recommendation is to use at least an Intel Core i5-3570 or AMD Athlon 3000G or more powerful processor.
Memory: 8 GB or more
Any SSD

**Software**
Windows Server 2019,2022 or higher, or (Windows 10,11 or higher), or Linux, Unix, Mac OS related .NET Core
VS Code 1.85 or higher, or Visual Studio 2022
.Net Core 7.0
IIS 10 or higher, or any web server that support .NET Core
Sql Server 2014,2016,2017,2019 or higher
MySQL 8.0 or higher

### Related links

CodeBehind on GitHub:
https://github.com/elanatframework/Code_behind

CodeBehind in NuGet:
https://www.nuget.org/packages/CodeBehind/

CodeBehind page:
https://elanat.net/page_content/code_behind