# Features

## Routing

* It is a part of ASP.NET under the namespace **`System.Web.Routing`**&#x20;
* Routing directs incoming request to an MVC controller.&#x20;
* Routes are defined during the application startup.&#x20;
* Routes are configured in **`Routeconfig.cs`** under **`App_Start`** folder&#x20;
* Routing Maps the URLs to controller action with parameters.

It matches incoming request and maps the request to a controllers action&#x20;

It constructs outgoing URLs that correspond to the controller actions.

#### Route Definition

`http://<domain>:<portnumber>/{controller}/{actions}/{value}`

* A route table is created in the application’s **Global.asax** file during the Application Start Event.
* This file is a special file that contains event handlers for ASP.NET application lifecycle events.

## Scaffolfding

* It is basically a code generation template for MVC application.&#x20;
* To perform CRUD(Create, Read, Update and Delete) we need to create model, view for all the functions and controller with each action item. It involves lot of code needs to be written&#x20;
* Scaffolding provides a feature to just select template and model, which in turn automatically creates controller with all methods and their views.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://dailyjournal.gitbook.io/notes/web-frameworks/asp.net-core/web-apps/mvc/features.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
