Какво е ASP.NET? Обяснете ASP.NET Archiтекстура
⚡ Умно обобщение
ASP.NET е платформа за уеб разработка от Microsoft, издаден за първи път през 2002 г., използван за изграждане на уеб приложения с .NET езици като C# и VB.NET. Той обяснява архитектурата на ASP.NET, нейните основни компоненти, функции и съвременното ASP.NET Core.
Какво е ASP.Net?
ASP.Net е платформа за уеб разработка, предоставена от Microsoft. Използва се за създаване на уеб базирани приложения. ASP.Net беше пуснат за първи път през 2002 г.
Първата внедрена версия на ASP.Net беше 1.0. ASP.NET Framework по-късно се разви до версия 4.8.1 и Microsoft сега разработва ASP.NET Core като свой модерен, междуплатформен наследник. ASP.Net е проектиран да работи с HTTP протокола. Това е стандартният протокол, използван във всички уеб приложения.
ASP.Net приложенията могат да бъдат написани и на различни .Net езици. Те включват C#, VB.Net и (в исторически план) J#. В тази глава ще видите някои основни положения на .Net framework.
Пълната форма на ASP е Active Server Pages, а .NET е Network Enabled Technologies.
ASP.NET Archiструктура и нейните компоненти
ASP.Net е рамка, която се използва за разработване на уеб-базирани приложения. Основната архитектура на рамката ASP.Net е показана по-долу.
ASP.NET Archiтектурна диаграма
Архитектурата на .Net framework е базирана на следните ключови компоненти:
- Език – Съществуват различни езици за .net framework. Те са VB.net и C#. Те могат да се използват за разработване на уеб приложения.
- Библиотека – .NET Framework включва набор от стандартни библиотеки с класове. Най-често използваната библиотека за уеб приложения в .net е Web библиотеката. Web библиотеката съдържа всички необходими компоненти, използвани за разработване на .Net уеб-базирани приложения.
- Common Language Runtime – Общата езикова инфраструктура (CLI) е платформа, на която се изпълняват .Net програми. CLR се използва за извършване на ключови дейности. Дейностите включват обработка на изключения и събиране на боклук.
По-долу са изброени някои от ключовите характеристики на ASP.Net framework-а:
- Code Режим „Зад“ – Това е концепцията за разделяне на дизайна и кода. Като направите това разделяне, става по-лесно да поддържате ASP.Net приложение. Общият файлов тип на ASP.Net файл е aspx. Да приемем, че имаме уеб страница, наречена MyPage.aspx. Ще има друг файл, наречен MyPage.aspx.cs, който ще обозначава кодовата част на страницата. Така че Visual Studio създава отделни файлове за всяка уеб страница, един за дизайнерската част, а другият за кода.
- Управление на държавата – ASP.Net има възможността да контролира управлението на състоянието. HTTP е известен като протокол без запазване на състоянието. Нека вземем пример с магазинping приложение за количка. Когато потребителят реши какво иска да купи от сайта, той натиска бутона за изпращане. Приложението трябва да запомни артикулите, които е избрал за покупката. Това е известно като запомняне на състоянието на приложението в текущ момент. Когато потребителят отиде на страницата за покупка, HTTP няма да съхранява информацията за елементите в количката. Необходимо е да се направи допълнително кодиране, за да се гарантира, че елементите от количката могат да бъдат прехвърлени към страницата за покупка. Такава имплементация понякога може да стане сложна. Но ASP.Net може да управлява състоянието от ваше име, така че да може да запомни елементите от количката и да ги прехвърли към страницата за покупка.
- Кеширане – ASP.Net може да внедри концепцията за кеширане. Това подобрява производителността на приложението. Чрез кеширане на страниците, които често се изискват от потребителя, те могат да се съхраняват на временно място. Тези страници могат да бъдат извлечени по-бързо и на потребителя могат да се изпращат по-добри отговори. Така кеширането може значително да подобри производителността на приложението.
ASP.Net е платформа за разработка, използвана за изграждане на уеб-базирани приложения, и е проектирана да работи със стандартния HTTP протокол.
Характеристики на ASP.NET
ASP.NET предоставя богат набор от вградени функции, които правят уеб разработката по-бърза и по-лесна за поддръжка. Най-важните функции включват:
- Code-зад модела – разделя дизайна (.aspx) от логиката (.aspx.cs) за по-чист и лесен за поддръжка код.
- Държавно управление – преглед на състоянието, състоянието на сесията и състоянието на приложението, запазване на данни в HTTP заявки без запазване на състоянието.
- Кеширане – кеширането на изходни данни и данни съхранява често използвано съдържание за подобряване на времето за реакция.
- Сървърни контроли и главни страници – компонентите на потребителския интерфейс за многократна употреба и последователното оформление на страниците намаляват повтарящия се код.
- Охрана – вградените функции за удостоверяване, оторизация и членство помагат за защитата на приложенията.
- Богат инструментариум – дълбоката интеграция с Visual Studio предлага дебъгване, IntelliSense и дизайн с плъзгане и пускане.
Предимства на ASP.NET
Тъй като ASP.NET компилира код и се доставя с голяма библиотека от рамки, той позволява на екипите да изграждат стабилни приложения с по-малко персонализиран код. Основните предимства са:
- Висока производителност – компилираният код и кеширането осигуряват бързо изпълнение в сравнение с интерпретираните алтернативи.
- Less код – многократно използваемите сървърни контроли и библиотеки намаляват количеството код, който пишете на ръка.
- Гъвкавост на езика – можете да изградите същото приложение на C#, VB.NET или други .NET езици.
- Силна сигурност - Windows Удостоверяването и конфигурацията за всяко приложение намаляват често срещаните уязвимости.
- Зряла екосистема – отлични инструменти за Visual Studio, документация и голяма общност от разработчици.
Заедно тези предимства правят ASP.NET продуктивен избор за корпоративни уеб приложения, особено в Microsoft-центрични среди.
ASP.NET срещу ASP.NET Core
ASP.NET (оригиналната рамка) и ASP.NET Core са свързани, но различни. ASP.NET Core е съвременната преработка и таблицата по-долу показва как се различават:
| Аспект | ASP.NET (Рамка) | ASP.NET ядро |
|---|---|---|
| платформа | Windows само за лична употреба | Кросплатформен (Windows, Linux, macOS) |
| Отворен код | частично | Напълно отворен код |
| Изпълнение | добър | По-висока; сред най-бързите уеб рамки |
| Уеб Хостинг | Свързан с IIS на Windows | IIS, Kestrel, Docker или облакът |
| Статус | Поддръжка (последна версия 4.8.1) | Активно разработен |
За нови проекти, Microsoft препоръчва ASP.NET Core заради неговата производителност, междуплатформена поддръжка и активно развитие. Съществуващите ASP.NET Framework приложения остават поддържани и продължават да работят на Windows.


