close

ASP.NET

Mergi la navigare Mergi la căutare
ASP.NET
Informatii generale
tip de program Cadru
dezvoltator microsoft
lansarea inițială ianuarie 2003 _
Licență EULA
Informații tehnice
Programat în .NET
Versiuni
Ultima versiune stabilă 4.5 (15 august 2012)
Ultima versiune în teste 5.0 (12 octombrie 2015)
Lansări
Pagini Active Server
ASP.NET
ASP.NET Core
Legături

ASP.NET este un cadru pentru aplicații web dezvoltat și comercializat de Microsoft . Programatorii sau chiar designerii pot folosi acest cadru pentru a construi site- uri web dinamice , aplicații web și servicii web . [ 1 ] A apărut în ianuarie 2002 cu versiunea 1.0 a .NET Framework și este tehnologia succesoare a tehnologiei Active Server Pages (ASP). ASP.NET este construit pe baza Common Language Runtime , permițând programatorilor să scrie cod ASP.NET folosind orice limbaj acceptat de .NET Framework .

Istoric

Microsoft a introdus o tehnologie numită Active Server Pages în decembrie 1996 . Face parte din Internet Information Services ( IIS ) începând cu versiunea 3.0 și este o tehnologie de pagină activă care permite utilizarea diferitelor scripturi și componente împreună cu HTML tradițional pentru a afișa pagini generate dinamic. Definiția contextuală a Microsoft este aceea că „ Active Server Pages este un mediu de aplicații gratuit și deschis în care puteți combina cod HTML, scripturi și componente ActiveX de pe server pentru a crea soluții dinamice și puternice pentru web ”.

După lansarea Internet Information Services 4.0 în 1997, Microsoft a început să investigheze posibilitățile pentru un nou model de aplicații web care ar putea rezolva plângerile comune despre ASP, în special cele privind separarea prezentării și conținutului și a putea scrie cod „curat”. [ 2 ] Mark Anders, un administrator al echipei IIS, și Scott Guthrie , care s-au alăturat Microsoft în 1997, după absolvirea Universității Duke, au primit sarcina de a determina cum ar trebui să arate un astfel de model. Designul inițial a fost dezvoltat pe parcursul a două luni de Anders și Guthrie, iar Guthrie a codificat prototipurile inițiale în timpul sărbătorilor de Crăciun din 1997. [ 3 ]

Image
Scott Guthrie în 2007.

Prototipul inițial a fost numit „XSP”; Guthrie a explicat într-un interviu din 2007 că,

Oamenii se întrebau întotdeauna ce înseamnă X. La momentul respectiv, chiar nu reprezenta nimic. XML a început cu asta; XSLT a început cu asta. Totul mișto părea să înceapă cu un X, așa că așa l-am numit inițial” . [ 2 ]
„Oamenii s-au întrebat întotdeauna ce înseamnă X. La acea vreme, nu însemna nimic cu adevărat. XML a început așa, la fel ca XSLT. Totul nou părea să înceapă cu un X, așa că de aceea l-am numit inițial X. Deci ."

Dezvoltarea inițială a XSP a fost făcută folosind Java [ 4 ] , dar în curând s-a decis construirea unei noi platforme pe lângă Common Language Runtime (CLR), deoarece oferea un mediu orientat pe obiecte , colectarea gunoiului și alte caracteristici care au fost văzute ca trăsături.dezirabile. Guthrie a descris această decizie drept „risc ridicat”, deoarece succesul noii sale platforme de dezvoltare web ar fi legat de succesul CLR, care, la fel ca XSP, era încă în stadiile incipiente de dezvoltare, atât de mult încât echipa XSP a fost prima echipă de la Microsoft care s-a concentrat pe CLR.

Odată cu trecerea la Common Language Runtime, XSP a fost implementat în C# (cunoscut intern ca „Project Cool”, dar păstrat secret de public) și redenumit în ASP+, moment în care noua platformă a fost văzută ca succesorul Active Server. Pages și a fost menit să ofere un mijloc ușor de migrare pentru dezvoltatorii ASP. [ 5 ]

Prima versiune demo publică și beta a ASP+ (și restul .NET Framework) a avut loc la Conferința pentru dezvoltatori profesionali (PDC) de la Microsoft, pe 11 iulie 2000, la Orlando . În timpul prezentării lui Bill Gates , Fujitsu a demonstrat ASP+ utilizat împreună cu COBOL , [ 6 ] și a fost anunțat suport pentru o varietate de alte limbi, inclusiv noile limbi Microsoft Visual Basic .NET și C#, precum și suportul prin instrumente de interoperabilitate. pentru Python și Perl creat de compania canadiană ActiveState . [ 7 ]

Odată ce marca „.NET” a fost selectată în a doua jumătate a anului 2000, numele a fost schimbat din ASP+ în ASP.NET. Mark Anders a explicat într-o apariție la The MSDN Show în acel an,

Inițiativa .NET se referă într-adevăr la o serie de factori, este vorba despre furnizarea de software ca serviciu, despre XML și servicii web și despre îmbunătățirea cu adevărat a Internetului în ceea ce privește ceea ce poate face.... ne-am dorit foarte mult să-i aducem numele. mai în concordanță cu restul pieselor platformei care alcătuiesc cadrul .NET.[ 5 ]
Inițiativa .NET cuprinde o serie de factori, este vorba despre livrarea de software ca serviciu, despre XML și servicii web și, de fapt, despre îmbunătățirea Internetului în ceea ce privește ceea ce poate face... ne dorim foarte mult să fim numiti după el (de la ASP+ ) mai aliniat cu restul pieselor platformei care alcătuiesc cadrul .NET "

După patru ani de dezvoltare și o serie de lansări de evaluare în 2000 și 2001, ASP.NET 1.0 a fost lansat pe 5 ianuarie 2002 ca parte a versiunii 1.0 a .NET Framework . Chiar înainte de lansarea sa, au fost scrise zeci de cărți despre ASP.NET [ 8 ]

Caracteristici

Pagini

Paginile ASP.NET, cunoscute oficial ca „ formulare web ”, sunt blocul principal pentru dezvoltarea aplicațiilor web. [ 9 ] Formularele Web sunt conținute în fișiere cu extensie ASPX ; În jargonul de programare, aceste fișiere conțin în mod obișnuit etichete HTML sau XHTML statice , precum și etichete care definesc controalele web care sunt redate pe partea serverului și controalele utilizatorului în care dezvoltatorii plasează tot codul static și dinamic necesar paginii web. În plus, codul dinamic care rulează pe server poate fi plasat pe o pagină dintr-un bloc <% -- código dinámico -- %>care este foarte asemănător cu alte tehnologii de dezvoltare precum PHP , JSP și ASP , dar această practică este în general descurajată, cu excepția scopurilor de conectare, deoarece necesită mai multe apeluri atunci când pagina este generată.

ASP.NET nu funcționează numai pe serverul Microsoft IIS , ci funcționează și pe Apache .

Exemplu de formular web

Acesta este un exemplu care utilizează cod „inline”, spre deosebire de codul din spate.

<%@  Limba paginii  = „C#” %> 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script  runat= „server” >

    protected  void  Page_Load ( expeditor obiect  , EventArgs e ) { Label1 . Text = DateTime . Acum . ToLongDateString () ; }  
    
          
    

</script>

<html  xmlns= "http://www.w3.org/1999/xhtml"  > 
<head  runat= "server" > 
    <title> Exemplu de pagină </title> 
</head> 
<body> 
    <form  id= " form1 "  runat= "server" > 
    <div> 
        <asp:Label  runat= "server"  id= "Label1"  /> 
    </div> 
    </form>

</body> 
</html>

Modelul Code-behind

Microsoft recomandă ca pentru programarea dinamică să utilizați modelul code-behind , care plasează codul într-un fișier separat sau într-o etichetă de script special creată . Numele de fișiere codificate se bazează pe numele fișierului ASPX, cum ar fi MyPage.aspx.cs sau MyPage.aspx.vb (această practică se face automat în Microsoft Visual Studio și alte medii de dezvoltare ). Când folosește acest stil de programare, dezvoltatorul scrie codul pentru diferite evenimente, cum ar fi o încărcare a paginii sau un clic de control, mai degrabă decât o cale liniară prin document.

Modelul code-behind al ASP.NET marchează o abatere de la ASP clasic și încurajează dezvoltatorii să creeze aplicații având în vedere ideea de prezentare și conținut separat. În teorie, acest lucru permite unui designer web, de exemplu, să se concentreze pe crearea de design cu șanse mai mici de a modifica codul de programare în timp ce face acest lucru. Aceasta este similară cu separarea din Controlerul de vizualizare a modelului

Exemplu

<%@  Limba paginii  = "C#" CodeFile = "ExampleCodeBehind.aspx.cs" Inherits = "Website.ExampleCodeBehind" AutoEventWireup = "adevărat" %>   
 

Eticheta de sus este plasată la începutul fișierului ASPX. Proprietatea CodeFile a directivei @ Page specifică ce fișier (.cs sau .vb) conține codul din spatele codului, în timp ce proprietatea Inherits specifică clasa din care derivă pagina. În acest exemplu, directiva @ Page este inclusă în ExampleCodeBehind.aspx, iar fișierul ExampleCodeBehind.aspx.cs va conține codul pentru această pagină:

folosind  System ;

namespace  Website 
{ 
	public  partial  class  ExampleCodeBehind :  System . Site-ul web . UI . Pagina 
	{ 
		protected  void  Page_Load ( expeditor obiect  , EventArgs e ) {  
		

		} 
	} 
}

În acest caz, metoda Page_Load() va fi apelată de fiecare dată când pagina ASPX este solicitată de la server. Programatorul poate implementa handlere de evenimente în diferite etape ale procesului de execuție a paginii.

Comenzi utilizator

ASP.NET permite crearea de componente reutilizabile prin crearea de controale utilizator. Un control de utilizator urmează aceeași structură ca un formular web, cu excepția faptului că controalele derivă din clasa System.Web.UI.UserControlși sunt stocate în fișiere ASCX . La fel ca fișierele ASPX, un ASCX conține etichete HTML sau XHTML, precum și etichete pentru a defini controalele web și alte comenzi ale utilizatorului. Ei pot folosi, de asemenea, modelul code-behind.

Programatorii își pot adăuga propriile proprietăți și metode, [ 10 ]​ și handlere de evenimente. [ 11 ] Un mecanism cu bule de evenimente oferă posibilitatea de a trece un eveniment declanșat de un control utilizator către pagina care le conține .

Administrația de stat

Aplicațiile ASP.NET sunt găzduite pe un server web și sunt accesate folosind protocolul HTTP fără stat , care nu stochează nicio informație despre conexiunile anterioare. Prin urmare, dacă aplicația dvs. necesită interacțiune între conexiuni, trebuie să implementați propriul management de stat. ASP.NET oferă mai multe moduri de a gestiona starea aplicațiilor ASP.NET.

Starea aplicației

Starea aplicației este o colecție de variabile definite de utilizator care sunt partajate de toate invocările unei aplicații ASP.NET. Acestea sunt setate și inițializate atunci când evenimentul Application_OnStarteste declanșat la încărcarea primei instanțe de aplicație și sunt disponibile până la terminarea ultimei instanțe. Variabilele de stare sau variabilele de sesiune ale aplicației sunt identificate prin nume. [ 12 ]

Starea sesiunii

Starea sesiunii este o colecție de variabile definite de utilizator, care persistă pe parcursul sesiunii unui utilizator. Aceste variabile sunt unice pentru diferite instanțe ale unei sesiuni de utilizator și sunt accesate folosind Session. Variabilele de sesiune pot fi setate să fie distruse automat după un anumit timp de inactivitate, chiar dacă sesiunea nu s-a încheiat. Pe partea clientului, o sesiune de utilizator este identificată printr-un cookie sau prin codificarea ID-ului sesiunii în URL-ul propriu-zis. [ 12 ]

ASP.NET oferă trei moduri de persistență pentru variabilele de sesiune: [ 12 ]

InProc
Variabilele de sesiune sunt menținute în cadrul procesului . Cu toate acestea, în acest mod, variabilele sunt distruse atunci când procesul ASP.NET este reciclat sau terminat.
StateServer
În acest mod, ASP.NET rulează un serviciu separat Windows care menține variabilele de stare. Deoarece această gestionare a stării are loc în afara procesului ASP.NET, are un impact negativ asupra performanței, dar permite mai multor instanțe ASP.NET să partajeze aceeași stare de server, permițând unei aplicații ASP.NET să fie echilibrată în sarcină și escaladare pe mai multe servere. De asemenea, deoarece serviciul de gestionare a stării rulează independent de ASP.NET, variabilele pot persista la terminarea procesului ASP.NET.
SQL Server
În acest mod, variabilele de stare sunt stocate într-un server de baze de date , accesibil folosind SQL . Variabilele de sesiune pot persista la terminarea procesului și în acest mod.

Vedeți starea

Starea de vizualizare se referă la mecanismul de gestionare a stării la nivel de pagină care este utilizat de paginile HTML generate de aplicațiile ASP.NET pentru a menține starea controalelor și widget -urilor formularelor web. . Starea controalelor este codificată și trimisă la server la fiecare trimitere a formularului într-un câmp ascuns cunoscut sub numele de __VIEWSTATE. Serverul trimite înapoi variabilele astfel încât atunci când pagina este redată din nou, controalele vor reveni la ultima lor stare. Pe partea de server, aplicația poate schimba starea vizualizării, dacă rezultatele randării actualizează starea oricărui control. Starea controalelor individuale sunt decodificate pe server și sunt disponibile pentru utilizare în ASP.NET folosind ViewState. [ 13 ]​ [ 14 ]

Motor de șabloane

La lansarea sa, ASP.NET nu avea un motor de șablon . Deoarece framework-ul .NET este orientat pe obiecte și permite moștenirea , mulți dezvoltatori ar putea defini o nouă clasă care moștenește de la „System.Web.UI.Page”, să scrie în ea metode care generează HTML și ca paginile aplicației lor să moștenească această clasă. Deși acest lucru permite elemente comune într-un site web, adaugă complexitate și combină codul sursă cu limbajul de marcare . De asemenea, această metodă poate fi vizualizată numai atunci când aplicația rulează, nu în timp ce este proiectată. Alți dezvoltatori folosesc includerea fișierelor și alte trucuri pentru a evita implementarea legăturilor de navigare și a altor elemente pe fiecare pagină.

ASP.NET 2.0 a introdus conceptul de Pagina principală , care permite dezvoltarea paginilor bazate pe șabloane web . O aplicație web poate avea una sau mai multe pagini master, care pot fi imbricate. [ 15 ]​ Șabloanele principale conțin controale pentru container, numite ContentPlaceHolders pentru a indica unde va merge conținutul dinamic, precum și HTML și JavaScript care vor fi partajate între paginile secundare.

Paginile secundare folosesc, de asemenea, acele controale ContentPlaceHolder, care trebuie să fie legate de ContentPlaceHolder al paginii master care conține această pagină copil. Restul paginii este definit de părțile partajate ale paginii master. Toate controalele de limbaj de marcare și de server de pe pagina de conținut trebuie să fie plasate în controlul ContentPlaceHolder.

Când se face o solicitare pentru o pagină de conținut, ASP.NET amestecă rezultatul paginii de conținut cu ieșirea paginii master și trimite rezultatul utilizatorului.

Pagina principală rămâne pe deplin accesibilă paginii de conținut. Aceasta înseamnă că pagina de conținut poate manipula anteturile, poate schimba titlul, poate seta cache-ul etc. Dacă pagina principală expune proprietăți sau metode publice, conținutul paginii le poate folosi și pe acestea.

Astăzi, cu noul produs Microsoft WebMatrix, a fost dezvăluit noul motor de șablon cunoscut sub numele de Razor. Deja înainte, Visual Studio IDE includea alte motoare. Facilitarea paginilor ASP.NET Model View Controller .

Alte fișiere

Alte extensii de fișiere asociate cu diferite versiuni de ASP.NET includ:

Extensie versiunea necesară Descriere
asax 1.0 Global.asax , folosit pentru logica la nivel de aplicație [ 16 ]
ascx 1.0 Comenzi web utilizator : comenzi personalizate care urmează să fie plasate pe paginile web
ashx 1.0 Gestionare HTTP personalizate
asmx 1.0 Pagini de servicii web
axd 1.0 Când este activată în web.config , cererea trace.axd generează ieșire de urmărire la nivel de aplicație. De asemenea, este folosit pentru handlerul special webresource.axd care permite dezvoltatorilor de control/componentă să împacheteze un control/componentă cu imagini, script, CSS etc. pentru dezvoltarea unui singur fișier (un „ansamblu”)
browser 2.0 Capacitățile browserului fișierelor stocate în format XML ; introdus în versiunea 2.0. ASP.NET include multe dintre acestea în mod implicit, pentru a suporta browserele web obișnuite. Acestea specifică ce browsere au ce capabilități, astfel încât ASP.NET 2 își poate personaliza și optimiza automat rezultatul în funcție de browser. Fișierele speciale .browser sunt disponibile pentru descărcare gratuită pentru a gestiona, de exemplu, validatorul W3C. Înlocuiește secțiunea BrowserCaps care se afla în fișierul machine.config în ASP.NET 1.x
config 1.0 web.config este singurul fișier dintr-o anumită aplicație web care utilizează această extensie în mod implicit ( machine.config are efecte similare asupra unui server web și asupra tuturor aplicațiilor de pe acesta), totuși ASP.NET oferă posibilitatea de a crea și de a utiliza altele. fișiere Sunt stocate în format XML
cs/vb 1.0 Fișierele de cod sursă (cs indică C# , vb indică Visual Basic ). Fișierele code-behind au în principal extensia „.aspx.cs” sau „.aspx.vb” pentru cele mai comune două limbi. Alte fișiere de cod (care conțin adesea biblioteci de clase) pot exista și în folderele web cu extensiile cs/vb. În ASP.NET 2, acestea ar trebui să fie plasate în folderul App_Code, unde sunt compilate dinamic și disponibile pentru întreaga aplicație.
dbml 3.5 Fișierul claselor de date LINQ to SQL
profesor 2.0 fișier de pagină principală
resx 1.0 Fișiere de resurse pentru localizare și globalizare. Fișierele de resurse pot fi globale (de exemplu, mesaje) sau locale, care sunt create special pentru un singur fișier aspx sau ascx.
harta site-ului 2.0 Fișiere de configurare a sitemapului
piele 2.0 fișiere tematice
svc 3.0 Fișierele serviciului Windows Communication Foundation

Structura directorului

În general, structura directorului ASP.NET poate fi determinată de preferințele dezvoltatorului. În afară de câteva nume de directoare rezervate, site-ul poate fi extins la orice număr de directoare. Structura este de obicei reflectată direct în adresele URL .

Numele de directoare speciale (începând cu ASP.NET 2.0 sunt): [ 17 ]

App_Browsers
Conține fișiere de definiții specifice browserului.
Cod_aplicație
Este un director pentru coduri. Serverul ASP.NET va compila automat fișierele (și subdirectoarele) din acest folder într-un ansamblu care este accesibil din orice pagină de pe site. App_Code este utilizat de obicei pentru codul de acces la date, codul modelului sau codul comercial. De asemenea, orice gestionare http specifică site-ului și implementările de module și servicii web merg în acest director. Ca alternativă la utilizarea App_Code, dezvoltatorul poate alege să furnizeze un ansamblu separat cu cod precompilat.
Datele aplicatiei
Director implicit pentru bazele de date , cum ar fi fișierele mdb Microsoft Access și fișierele mdf Microsoft SQL Server . Acest director este de obicei singurul care poate fi scris în aplicație.
App_LocalResources
Conține fișiere de resurse localizate pentru pagini individuale ale site-ului.
App_GlobalResources
Conține fișiere resx cu resurse localizate disponibile pentru fiecare pagină a site-ului. Aici, dezvoltatorul ASP.NET va stoca de obicei mesajele care vor fi folosite în mai multe pagini.
App_Themes
folosit pentru teme alternative ale site-ului.
App_WebReferences
Folosit pentru fișierele de descoperire și fișierele WSDL pentru referințe la serviciile web care urmează să fie consumate de site.
cos
Conține cod compilat (fișiere .dll) pentru controale, componente și alt cod care poate fi referit de aplicație. Orice clasă reprezentată de cod în folderul Bin este referită automat în aplicație. Sunt fișiere sau biblioteci a căror acțiune principală este de a executa o funcție atunci când sunt apelate sau invocate.

Evoluție de la ASP clasic

În modelul activ de dezvoltare web bazat pe pagini, programarea actuală ASP are câteva limitări:

  • Pentru ca totul să se întâmple pe o pagină web, este obișnuit să scrieți o cantitate mare de cod pentru a rezolva nevoi simple. ASP.NET aduce un model declarativ în programarea Web: controalele serverului funcționează pe o pagină Web pur și simplu declarându-le. Când pagina ASP.NET se încarcă, controalele listate pe pagina ASP sunt instanțiate și este responsabilitatea controlului să scoată cod HTML pe care browserul îl poate înțelege.
  • ASP clasic este oarecum dezorganizat. Într-o pagină ASP putem include aproape orice: HTML simplu, cod script, obiecte COM și text. Nu există nicio distincție formală între conținutul unei pagini și comportamentul acesteia: pur și simplu introducem cod în pagină și vedem ce se întâmplă. ASP.NET impune o anumită ordine modelului standard de programare ASP. Într-un fel, această „dezorganizare” poate fi ușor evitată prin folosirea bunului simț și a unora dintre noile tehnologii. De exemplu, putem scrie în paginile noastre ASP doar cod VBScript. Un astfel de cod ar genera un mesaj XML , care ar fi apoi interpretat de un fișier XSLT . În acest fel reușim să evităm așa-numitul „cod spaghetti”, crescând claritatea codului și viteza de execuție a paginilor ASP. Totuși, în măsura în care programatorul trebuie să lucreze cu cod scris de alții, el se va confrunta adesea cu practici proaste care sunt în mare măsură accentuate de permisivitatea ASP-ului clasic.
  • A treia limitare în dezvoltarea ASP este că, cu ASP tradițional, folosim limbaje de scripting netipizate, cum ar fi VBScript sau JScript . Putem instala alte motoare de scripting care impun verificarea tipului; cu toate acestea, ele nu sunt universal cunoscute sau utilizate ca primele. ASP.NET separă în mod clar porțiunea bazată pe script a unei pagini web de conținutul acesteia.
  • ASP.Net, se poate spune că este un nou nivel de abstractizare în construcția de site-uri web, deoarece aplicațiile web pot fi create rapid, pe baza controalelor incluse în frameworkWork sau multe altele gratuite care se află pe net, ascunzând codul mult Ex: Puteți crea cu ușurință o grilă sau un tabel și este sortat automat, pagină etc., obținându-și datele din orice bază de date. Include un instrument excelent pentru crearea rapoartelor, iar acesta include mijloace automate de exportare a acestora în XLS sau PDF și include și CristalReport. De asemenea, vă permite să separați complet interfața de logica de afaceri. Excelent pentru dezvoltarea de aplicații pe mai multe niveluri.
  • Crearea paginilor cu AJAX este foarte ușoară , incluzând doar câteva comenzi, precum și descărcarea gratuită ASP.Net Ajax ToolKit.

Extensii

ASP.NET AJAX

ASP.NET AJAX , denumit anterior Atlas, este un set de extensii pentru ASP.NET dezvoltat de Microsoft pentru a implementa funcționalitatea Ajax .

ASP.NET AJAX a fost lansat în ianuarie 2007 după o lungă perioadă de testare. Ulterior, a fost inclus cu versiunea 3.5 a .NET Framework, care a fost lansată cu Visual Studio 2008 în noiembrie 2007.

Cadrul ASP.NET MVC

Este o extensie a paginilor ASP.NET folosind arhitectura MVC .

ASP.NET Razor

Cunoscută și sub numele de pagini web ASP.NET, este o alternativă la formularele web concepute pentru a fi utilizate cu MVC.

Date dinamice ASP.NET

Este un cadru inspirat de Ruby on Rails pentru platforma Microsoft, care vine ca o extensie pentru ASP.NET, care poate fi folosit pentru a construi aplicații web bazate pe date. Expune tabelele dintr-o bază de date prin codificare în URI-ul serviciului web ASP.NET, iar datele din tabel sunt redate automat în HTML. Procesul de randare poate fi controlat prin utilizarea șabloanelor de aspect personalizate. Pe plan intern, schema bazei de date este descoperită utilizând metadatele bazei de date.

ASP.NET Web API

Este un API HTTP pentru expunerea serviciilor Web RESTful.

ASP.NET SignaIR

Este o nouă bibliotecă pentru dezvoltatorii ASP.NET, care face dezvoltarea Web în timp real ușoară din punct de vedere funcțional. Permite comunicarea bidirecțională între client și server. Serverele pot acum împinge conținut către clienții conectați instantaneu atunci când sunt disponibile. Suporta Web Sockets. Include API-uri pentru gestionarea conexiunilor (de exemplu, evenimente de conectare și deconectare), pooling de conexiuni și autorizare.

Programare modele în ASP.NET

ASP.NET acceptă în prezent trei modele de programare: ASP.NET Web Forms, ASP.NET MVC și ASP.NET Web Pages. Deși toate cele trei modele de programare rulează pe aceeași bază ASP.NET, fiecare structurează aplicația în moduri complet diferite, promovează metodologii de dezvoltare diferite și se adresează diferitelor profiluri de dezvoltator. Unele caracteristici care sunt virtuți în unele modele de programare pot fi considerate puncte slabe în celălalt. Ce este mai important, dezvoltarea la un nivel ridicat de abstractizare sau controlul total asupra fiecărui aspect al aplicației? Simplitate vs. Control. Flexibilitate vs. Eficienţă. Acestea sunt compensațiile care trebuie cântărite la alegere. În această serie de articole vom trece în revistă diferențele dintre cele trei modele de programare, precum și scenariile favorabile pentru fiecare dintre ele.

Este important de subliniat că faptul de a alege unul dintre modelele de programare la demararea unui proiect ASP.NET nu le exclude neapărat pe celelalte, dar este posibil să existe aplicații „hibride” și în multe cazuri va avea perfect sens să se dezvolte anumite părți ale proiectului ASP.NET.aplicația cu un model de programare și alte părți cu alt model.

ASP.NET Web Forms a fost primul dintre cele trei modele de programare care a existat și oferă un nivel ridicat de abstractizare cu un model familiar de programare bazat pe evenimente și control, care promovează productivitatea prin programare declarativă prin reducerea cantității de cod necesare pentru implementarea unui anumită funcționalitate.

ASP.NET MVC a fost conceput ca o alternativă la Web Forms și oferă un model de programare bazat pe modelul popular de arhitectură MVC. Principalele sale caracteristici includ integrarea sa completă cu testele unitare și separarea mai clară între logica de prezentare, logica de afaceri și logica de acces la date.

Comunitatea ASP.NET MVC în spaniolă: https://groups.google.com/d/forum/mundoaspnetmvc

Paginile Web ASP.NET este cel mai recent dintre cele trei modele de programare și a fost creată ca răspuns la o cerere tot mai mare din partea dezvoltatorilor web fără experiență anterioară ASP.NET, a căror introducere în ASP.NET Web Forms sau MVC a fost o investiție pentru ei. .timp initial prea mare. Paginile Web oferă un model de programare mai simplu, mai rapid de învățat, fără a renunța la toată funcționalitatea și flexibilitatea ASP.NET.

Utilizarea curentă a limbii

În prezent, o aplicație .NET poate rula în două moduri diferite:

Aplicații client/server : Aceste aplicații sunt de obicei sub formă de executabile compilate . Acestea pot integra toată bogăția unei interfețe cu utilizatorul, cum este cazul aplicațiilor de performanță și productivitate, dar nu reunesc logica de business ca resursă care poate fi reutilizată. De asemenea, tind să fie mai puțin gestionabile și scalabile decât alte aplicații.

Aplicații care folosesc browserul : Aceste aplicații se caracterizează prin faptul că au o interfață web bogată și foarte utilă. Interfața grafică integrează mai multe tehnologii, care sunt HTML, XHTML , scripting etc; atâta timp cât browserul utilizat acceptă aceste tehnologii.

Vezi și

Referințe

  1. „Ce este ASP.NET?” . Ghid digital IONOS . Preluat la 11 martie 2022 . 
  2. a b Microsoft , ed. (ianuarie 2007). „Profilul jurnalului de arhitectură: Scott Guthrie” . Jurnalul de Arhitectură . Consultat la 20 aprilie 2008 . 
  3. Michiel van Otegem (24 iulie 2007). „Interviu cu Scott Guthrie, creatorul ASP.NET . Arhivat din original pe 9 noiembrie 2007 . Consultat la 20 aprilie 2008 . 
  4. Tim Anderson (30 octombrie 2007). Registrul, ed. „Cum a început ASP.NET în Java . Consultat la 20 aprilie 2008 . 
  5. a b Microsoft , ed. (20 decembrie 2000). „Show #9 - ASP.NET” . Emisiunea MSDN . Arhivat din original pe 22.10.2005 . Consultat la 20 aprilie 2008 . 
  6. Microsoft , ed. (11 iulie 2000). „Transcrierea discursului Bill Gates - Conferința dezvoltatorilor profesionali 2000” . Arhivat din original pe 10 aprilie 2008 . Consultat la 20 aprilie 2008 . 
  7. Business Wire, ed. (11 iulie 2000). „ActiveState acceptă Microsoft .NET Framework; Interoperabilitate în mai multe limbi Perl .NET și Python .NET » . Arhivat din original pe 9 iulie 2012 . Consultat la 20 aprilie 2008 . 
  8. Microsoft , ed. (15 noiembrie 2001). "Da! de la PDC» . Emisiunea MSDN . Consultat la 20 aprilie 2008 .   ( link întrerupt disponibil la Arhiva Internet ; vezi istoric , prima și ultima versiune ).
  9. ^ ( MacDonald și Szpuszta, 2005 , p. 63)
  10. http://msdn2.microsoft.com/en-us/library/ms972975.aspx#usercontrols_topic6 Adăugarea de proprietăți și metode la un control utilizator
  11. http://msdn2.microsoft.com/en-us/library/ms972975.aspx#usercontrols_topic9 Crearea și ridicarea unui eveniment personalizat
  12. a b c „INFO: ASP.NET State Management Overview . Consultat la 23 octombrie 2007 . 
  13. „ViewState în ASP.NET” . Arhivat din original pe 14 octombrie 2007 . Consultat la 23 octombrie 2007 . 
  14. „Prezentare generală ASP.Net ViewState . Arhivat din original pe 16 septembrie 2008. 
  15. Prezentare generală a paginilor principale ASP.NET (Rețeaua de dezvoltatori Microsoft)
  16. Sintaxa globală.asax
  17. http://msdn2.microsoft.com/en-us/library/ex526337.aspx Aspectul site-ului web ASP.NET din MSDN

Link- uri externe