# ASP.NET Core MVC haqida qisqacha

**ASP.NET Core MVC** bu ASP.NET Core bilan ishlatish uchun optimallashtirilgan, yengil, ochiq kodli, yuqori testlash imkoniyatiga ega bo'lgan, ohirgi veb standartlarni qo'lab quvatlovchi ASP.NET frameworkning ko'rnishlaridan biri hisoblanadi. ASP.NET Core MVC loyihani 3 qismga **MODEL VIEW CONTROLLER** ajratish orqali clean code (toza yoki optimal kod) yozishga imkon beradi.

**ASP.NET Core MVC** quydagilarni jamlagan.

* Routing
* Model binding
* Model validation
* Dependency injection
* Filters
* Areas
* Web APIs
* Testability
* Razor view engine
* Strongly typed views
* Tag Helpers
* View Components

## Routing

Routing loyihangizga kelgan so'rov urlni qayta ishlovchi mehanizm hisoblanib kelgan urlga mos kodni bajarilishni taminlaydi Boshqacha qilib aytsak **URL Maping** bilan shug'ulanadi. ASP.NET Core MVC da har bir routeni nomi bo'ladi. Dastlab default(birinchi tanlangan yoki standart) route ga yo'naltiriladi. Routing orqali loyihangiz tushunarli va qidirishga oson urllarga ega bo'ladi. **Routing Template Syntax** yordamida o'zingizga qulay ko'rnishdagi standart yoki ixtiyoriy qiymatlarga ega bo'lgan routing shablonini yasashingiz mumkin.

```csharp
app.UseEndpoints(endpoints =>
{
    endpoints.MapControllerRoute(
        name: "default",
        pattern: "{controller=Home}/{action=Index}/{id?}");
});
```

## Model binding

**Model binding** - ASP.NET Core MVC da **Http so'rovdan kelayotgan malumotlarni ajratib olib** ularni **Controller ning Action parametrlariga** avtomatik tarzda bog'lovchi xususiyatdir. Ushbu holda Action parametrlari oddiy turlar int,bool,char,... dan tortib compex murakab turlar ham bo'lishi mumkin: Student,People,...


---

# 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://docs.dot-net.uz/c-.net/web-development/asp.net-core-mvc/asp.net-core-mvc-haqida-qisqacha.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.
