Know-how, prelegere, formulare web

Rezumat: Poziționarea absolută a controalelor. Operatorul pentru comutarea unei instanțe a unui CheckBox. Modelul evenimentului ASP.NET. Feedback automat. Salvați starea de vizualizare. Etapele paginilor care rulează pe server. Prelucrarea evenimentelor. Legarea automată a datelor. Pagina este un container de controale. Controlul software al titlului paginii. Creați un control în timpul rulării. Pagina clasică. Obiecte Sesiune, Aplicație, Cache. Obiectul Cerere. Obiectul Răspuns. Obiectul Server. Obiectul User.

Fișierele pentru curs puteți descărca aici

Pagini ASP.NET. cunoscute oficial ca Formulare Web, fac parte integranta din aplicatia ASP.NET. Acestea sunt unități specifice de interfață pe care clienții le pot solicita și afișa în browserele lor. Formularele Web din ASP.NET suportă aceeași tehnologie de programare vizuală ca și formele Windows în aplicațiile locale. Și este foarte convenabil pentru dezvoltatorii săraci și nefericiți, adică noi cu tine.

În centrul paginilor Web Paginile HTML sunt un descriptor

. . În paginile active ale altor sisteme, de exemplu PHP. pagina permite mai multe descriptori pe ea . (descriptori de formulare HTML). În acest caz, acești descriptori trebuie să aibă atribute ID cu valori diferite, astfel încât sistemul care ține cont de pagina activă să poată face o distincție între forma care le-a trimis și serverul care trebuie procesate.

Paginile ASP.NET solicită să nu existe mai mult de un formular pe fiecare dintre ele (în principiu, pot exista mai multe forme pe pagină, dar numai o singură formă poate fi vizibilă în orice moment. Vizibil = Adevărat).

Dar acest lucru este de ajuns pentru o pagină HTML obișnuită, astfel încât, indiferent de elementele de control care conțin formularul HTML, toate informațiile să fie colectate de la acestea atunci când pregătesc returnarea trimiterii către server. Când utilizatorul face clic pe butonul Trimiteți. Browserul preia valorile curente secvențial de la fiecare control și formează un șir lung de perechi ID = valoare de la ele. Apoi, această linie este trimisă serverului pe pagina specificată în atributul de acțiune al descriptorului . utilizând metoda postului. sau metoda de obținere. Dacă nu este specificat atributul de acțiune, atunci datele sunt trimise la aceeași pagină. HTML însăși nu stabilește limite pentru numărul de formulare și setările ASP.NET și pentru o pagină activă pot genera doar un singur formular HTML .

Să avem Page.aspx. care are extensia .aspx. dar conține codul paginii statice obișnuite. Când executați o astfel de pagină, sistemul ASP.NET îl va trimite utilizatorului așa cum este, fără a adăuga nimic. În timp ce acest lucru va lua timp pentru a analiza codul și a determina că nu trebuie adăugat nimic.

Know-how, prelegere, formulare web


Prezentare în browser (client)

Aceasta se numește mesaje codificate URL sub formă de caractere valide de litere și numere (pentru simplitate CHETKOB B.M. tocmai a introdus în litere latine), mesajul nu conține caractere de control. capabilă să provoace un efect nedorit. Din moment ce pagina de primire nu este specificată, datele formate din partea serverului din partea serverului vor fi aceeași pagină. În exemplul nostru, nu face nimic. În primul rând, nu este găzduit pe server, în al doilea rând, nu are elemente active ale serverului capabile să traducă descriptorii și atributele acestora în variabilele de cod și valorile acestora.

Am spus deja că dacă plasați această pagină pe server, atunci, în ciuda extensiei .aspx. ASP.NET - mașina nu o va procesa oricum. Pentru a face acest lucru, descriptorii HTML ar trebui să fie activi (pe partea de server) prin adăugarea atributului runat = "server". În această privință, facem două definiții: pagina care nu conține descriptori de server. se numește statică (pasivă). Dacă există cel puțin un descriptor cu atributul specificat pe pagină, atunci această pagină va fi procesată ulterior de sistemul ASP.NET (sau altul) și se va numi dinamic (activ).

Prin urmare, moral: este mai bine să alocați extensii htm sau html statice la pagini statice. astfel încât serverul, la solicitarea clientului, să-l trimită fără întârziere. Dacă atribuiți o extensie aspx unei pagini statice. acesta va fi în continuare trimis clientului fără modificări, dar înainte de aceasta va trece prin sistemul de procesare, ceea ce va necesita timp suplimentar și risipirea resurselor mașinilor.

Exemplu de codificare a paginii

Carcasa are două file principale cu elemente de interfață utilizator pentru a suporta paginile active, Standard și HTML. Fila HTML conține elemente care suportă în mod direct standardul HTML descriptor. și este necesar pentru a adapta paginile vechi la noua tehnologie ASP.NET cu modificări minime. Este suficient să adăugați atributul runat = "server" la descriptorii acestor elemente. Fila Standard conține controale mai avansate. având un set mai mare de proprietăți și evenimente, complet orientate spre programarea obiectului.

Atunci când puneți elemente din fila HTML din pagină, atributul runat = "server" nu este adăugat automat și un astfel de element nu este procesat pe server de către server. Prin urmare, nu poate fi codificat într-un limbaj de programare. Primul element care urmează să fie marcat ca un server, care intră direct a spus atribut reprezentare element de descriptor sau în plic, în meniul contextual element de modul selectat de proiectare și de a efectua Rulare ca opțiune server de control (pentru a face controlul de server)

Know-how, prelegere, formulare web

Dacă dezvoltăm o pagină activă de la zero, atunci este mai bine să aplicăm imediat controale de server. unde descriptorul runat = "server" este deja instalat automat. Și, în plus, dacă o elimini, va fi considerată o greșeală. Tag-uri. reprezentând elementele serverului, începe cu asp: Tip_tip. atunci apar atributele elementului.

De exemplu, creați o pagină simplă.

  • Creați un site nou cu comanda Fișier / Nou / Web Site ... prin configurarea ferestrei asistentului

Know-how, prelegere, formulare web

După ce faceți clic pe butonul OK, va fi creată o pagină de start, care constă din două fișiere: Default.aspx și Default.aspx.cs.

Există două tipuri de codificare a paginii ASP.NET:

  1. Pagini cu cod încorporat (combinat), când toate codurile C # și descriptorii HTML sunt stocate într-un singur fișier .aspx
  2. Paginile cu cod ascuns (separat, paginat) când codul C # este stocat separat de codul cu descriptori din fișierul .aspx.cs

A doua modalitate este mai bună și pagina inițială a site-ului este creată astfel. Big Bill recomandă utilizarea celei de-a doua metode pentru a separa designul paginii și funcționalitatea acesteia. Dar pentru antrenament vom folosi prima metodă.

  • În panoul Solution Explorer, ștergeți fișierul cu codul C #

Know-how, prelegere, formulare web

  • Imediat sub declarație creați un container