ASP.NET

от Уикипедия, свободната енциклопедия
ASP.NET
Парадигмаобектно ориентиран
Реализиране презянуари 2002
АвторМайкрософт
Уебсайтwww.asp.net

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 страницата.

Примери[редактиране | редактиране на кода]

Във файла SampleCode.aspx се съдържа следната информация:

 <%@ Page Language="C#" CodeFile="SampleCode.aspx.cs" Inherits="Website1.SampleCode"
 AutoEventWireup="true" %>

CodeFile уточнява пътя до сървърно изпълнявания файл, който е с разширение в зависимост от .NET езика (C#, VB.NET и др.).

Във файла SampleCode.aspx.cs се съдържа следната информация:

using System;
namespace Website1
{
	public partial class SampleCode: System.Web.UI.Page
	{
		protected void Page_Load(object sender, EventArgs e)
		{
			Response.Write("Здравей свят!!!");
		}
	}
}

Директории на 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 директорията, биват автоматично реферирани във вашето приложение.

Версии[редактиране | редактиране на кода]

Новите версии на ASP.NET съвпадат с .NET Framework:

Дата Версия Забележка Новости
16 януари 2002 1.0 Първа версия

Излиза заедно с Visual Studio.NET

  • Поддръжка на обектно ориентирани уеб приложения
    • Не се налага използването на Server.CreateObject(...).
  • Базирано на Windows програмиране; програмистът може да използва DLL библиотеки и други вградени функции.
24 април 2003 1.1 Излиза заедно с Windows Server 2003

Излиза заедно с Visual Studio.NET 2003

  • Контроли за мобилни апликации
  • Вградени валидации
7 ноември 2005 2.0

Кодово имеWhidbey
Излиза заедно с Visual Studio 2005, Visual Web Developer Express
и SQL Server 2005

  • Нови контроли за управление на данни (GridView, FormView, DetailsView)
  • Нов начин за достъп до бази от данни (SqlDataSource, ObjectDataSource, XmlDataSource controls)
  • Навигационни контроли
  • Master pages
  • Контроли за достъп
  • Теми
  • Разделяне на уеб части (Web parts)
  • Personalization services
  • Пълно прекомпилиране
  • Локализация
  • Поддръжка на 64-битови процесори
21 ноември 2006 3.0
19 ноември 2007 3.5 Излиза заедно с Visual Studio 2008 and Windows Server 2008
  • Нови контроли за данни (ListView, DataPager)
  • ASP.NET AJAX добавен като част от .NET Framework
  • WCF поддръжка за RSS, JSON, POX
  • Цялостни промени по .NET Framework 3.5 като LINQ и др.
11 август 2008 3.5 Service Pack 1 Излиза заедно с Visual Studio 2008 Service Pack 1
  • Включване на ASP.NET Dynamic Data
  • Поддръжка върху контрола на историята на браузъра в ASP.NET AJAX приложения.
  • Нови именни пространства System.Web.Abstractions и System.Web.Routing
12 април 2010 4.0 Излиза заедно с Visual Studio 2010

Паралелни .NET Framework 4 разширения и функции

Източници[редактиране | редактиране на кода]

  Тази страница частично или изцяло представлява превод на страницата ASP.NET в Уикипедия на английски. Оригиналният текст, както и този превод, са защитени от Лиценза „Криейтив Комънс – Признание – Споделяне на споделеното“, а за съдържание, създадено преди юни 2009 година – от Лиценза за свободна документация на ГНУ. Прегледайте историята на редакциите на оригиналната страница, както и на преводната страница, за да видите списъка на съавторите. ​

ВАЖНО: Този шаблон се отнася единствено до авторските права върху съдържанието на статията. Добавянето му не отменя изискването да се посочват конкретни източници на твърденията, които да бъдат благонадеждни.​

Външни препратки[редактиране | редактиране на кода]