ASP.NET (наанглийски:Active Server Pages за .NET) е технология за създаване науебсайтове, онлайн иуеб приложения, а също особено зауеб услуги, разработвана от „Майкрософт“[1]. За първи път е публикувана през януари 2002 с версия 1.0 на.NET Framework[1] и продължава Microsoft Active Server Pages (ASP) технологията[1], като непрекъснато се добавят нови програмни разширения, за тази технология на Майкрософт, макар че не може да се каже, че е променяна или подобрена версия на ASP, а само допълвана.
След излизането на Internet Information Services (IIS) 4.0 през 1997 г. Microsoft започва проучване за възможностите за преминаване към нов модел уеб приложение, което ще разреши проблемите с класическото ASP и честите оплаквания от него. Особено внимание се отделя за разделянето съдържанието и „чистия“ код. Марк Андерс, мениджър в екипа IIS, и Скот Гътри, който се присъединява към Microsoft през 1997 г., са натоварени със задача да определят как ще изглежда този модел. Първоначалният проект е разработен в продължение на два месеца от Андерс и Гътри.
След четири години на разработка и поредица от бета-версии през 2000 г. и 2001 г. е пусната на 5 януари 2002 г. ASP.NET 1.0 в рамките на версия 1.0 на .NET Framework. Дори и преди датата на излизане са написани десетки книги за ASP.NET. Microsoft го насърчава силно като част от платформата си за уеб услуги. Гътри става продуктов мениджър на звено ASP.NET, като продължава развитието с бързи темпове. Версия 1.1 е пусната на 24 април 2003 г. като част от Windows Server 2003. Версия 1.1 е подобряване на ASP.NET с поддръжка намобилни устройства.
ASP.NET цели производителност спрямо останалите скрипт базирани технологии (включително класическия ASP), като компилира сървърно кода в един или повече DLL файлове на уеб сървъра. Тази компилация става автоматично, когато страницата бива заредена за пръв път (което от своя страна означава, че програмистът не трябва да изпълнява отделни компилации за страниците). Това комбинира лекотата на разработване, предлагана от скриптовите езици, с производителността на бинарните операции. Трябва да се има предвид обаче, че самата компилация може да причини забележимо забавяне при потребителя, когато редактираната страница бива изискана за пръв път от уеб сървъра, но това забавяне не би се появило отново преди следваща промяна.
ASPX и необходимите ресурси се поставят на виртуален хост наInternet Information Services сървър (или друг сървър, съвместим с ASP.NET). Когато потребителят за пръв път поиска да зареди страница,.NET Framework анализира и компилира файловете в .NET асембли и изпраща отговор; при последвалите зареждания се извикват от DLL файловете. ASP.NET има възможността да компилира цели сайтове на части от по 1000 файла при първо зареждане. Ако забавянето е значително или причинява проблеми, големината на самите части може да бъде променяна.
ASP.NET е изградена въз основа на Common Language Runtime (CLR), което позволява на програмистите да пишат ASP.NET код, като използват .NET език по избор.
Програмистите могат също да изберат да компилират предварително своите файлове, преди поставянето им на сървъра, използвайкиMS Visual Studio, елиминирайки нуждата от първоначалното компилиране в уеб средата. Това елиминира и нуждата от качване наизходен код на уеб сървъра. Той поддържа и предварително компилиран текст.
Препоръките идирективите е специална инструкция за това как ASP.NET трябва да обработи страницата. Най-често срещаната директива е <%@ Page%>, която може да зададе много от атрибутите, използвани от анализатора и компилатора на ASP.NET страницата.
По принцип структурата на директориите в ASP.NET може да се зададе по преценка на разработчика. С изключение на няколко запазени директории сайтът може да се раздели на произволен брой директории. Структурата обикновено е директно указана в URL адресите.
Специалните имена на директории (от ASP.NET 2.0 насам) са:
App_Code
Това е така наречената директория със „суров код“. Сървърът на ASP.NET автоматично компилира файлове (и поддиректории) в тази директория, в асембли, което е достъпно от всяка страница на сайта. Алтернатива за разработчика пред използването на директорията App_Code е да използва отделно асембли с прекомпилиран код.
App_Data
Директорията App_Data в ASP.NET е директорията по подразбиране за всичкибази данни, използвани от ASP.NET уебсайта. Тези бази данни могат да включват Access (mdb) файлове илиSQL Server (mdf) файлове. App_Data е единствената директория с включен достъп за писане в ASP.NET уеб апликацията.
App_LocalResources
Така наречения файл CheckOut.aspx.fr-FR.resx пази локални ресурси за френската версия на CheckOut.aspx page. Когато UI културата се зададе на френски, ASP.NET автоматично ще намери и използва този файл за локализация.
App_GlobalResources
Пази resx файлове с локализирани ресурси достъпни за всяка страница. Тук разработчиците обикновено запазват локализирани съобщения и т.н., които се използват в повече от една страница.
App_Themes
Добавя папка, която съдържа файлове свързани с темите, които са нова особеност на ASP.NET, който спомага да подсигури съпоставим вид на страниците в уеб сайта и прави по-лесна смяната на цялостния облик на уеб страницата при нужда.
App_WebReferences
съдържа разкриващи файлове иWSDL файлове за референция къмуеб услуги да бъдат използвани от сайта.
Bin
Съдържа компилиран код (.dll файлове) за контролери, компоненти или друг код, към който искате да реферирате от вашето приложение. Всички класове, представени в код в Bin директорията, биват автоматично реферирани във вашето приложение.