Tutorial ASP.NET MVC pentru începători: Ce este, Architectură
Ce este ASP.NET MVC?
ASP.NET MVC este un cadru de dezvoltare web open source din Microsoft care oferă o arhitectură Model View Controller. ASP.net MVC oferă o alternativă la formularele web ASP.net pentru construirea de aplicații web. Este o parte a platformei .Net pentru construirea, implementarea și rularea aplicațiilor web. Puteți dezvolta aplicații web și site-uri web cu ajutorul HTML, CSS, jQuery, Javascript, Etc
Învață MVC cu acest tutorial ASP.NET MVC care acoperă toate conceptele de bază ale MVC pentru începători:
De ce ASP.net MVC?
Deși formularele web au avut mare succes, Microsoft s-a gândit să dezvolte ASP.net MVC. Principala problemă cu ASP.net webForms este performanța.
Într-o aplicatie web, există patru aspecte principale care definesc performanța: -
- Probleme legate de timpul de răspuns
- Problema testării unitare
- Personalizare HTML
- Reutilizarea clasei code-behind
ASP.net MVC excelează în parametrii de mai sus.
Istoricul versiunilor MVC
ASP.NET MVC1
- Lansat pe 13 martie 2009
- Rulează pe.NET 3.5
- Visual Studio 2008
- Arhitectură MVC Pattern cu WebForm Engine
- Caracteristicile principale includ HTML și Testarea unității, Ajutor Ajax, Rutare etc.
ASP.NET MVC2
- Această versiune a fost lansată pe 10 martie 2010
- Rulează pe .NET 3.5,4.0 și cu Microsoft Visual Studio 2008
- Includeți funcții precum Ajutoare cu șabloane, Ajutoare Ul cu schele automate și șabloane personalizabile
- Acceptă atributele DataAnnotations pentru a aplica validarea modelului pe partea client și server
ASP.NET MVC3
- A fost lansat pe 13 ianuarie 2011
- Rulează pe .NET 4.0 și cu Microsoft Visual Studio 2010
- Utilizarea lui NuGet pentru a furniza software și vă permite să gestionați dependențele pe platformă
- Mai bine JavaSuport pentru scripturi, validare jQuery și legare JSON
- Oferă funcții precum motorul de vizualizare Razor; Atribute îmbunătățite de Adnotări de date pentru validarea modelului atât pe partea client, cât și pe partea serverului
ASP.NET MVC4
- Această versiune a fost lansată în august 2012
- Se rulează pe .NET 4.0, 4.5 și cu Visual Studio 2010 și Visual Studio 2012
- Îmbunătățiri la șabloanele implicite de proiect
- Oferă funcții precum șablon de proiect mobil folosind jQuery Mobile, suport pentru sarcini pentru controlere asincrone, grupare, minimizare etc.
ASP.NET MVC5
- Lansat pe 17 octombrie 2013
- Rulează pe .NET 4.5, 4.5.1 și cu Visual Studio 2012 și Visual OneASP.NET
- Acceptă rutarea atributelor în MVC
Caracteristicile MVC
- Testabilitate ușoară și fără frecare
- Control deplin asupra HTML-ului dvs., JavaScript și adrese URL
- Pârghie existente ASP.Net Categorii
- O nouă opțiune de prezentare pentru ASP.Net
- O modalitate mai simplă de a programa Asp.Net
- Separare clară a logicii: model, vedere, controler
- Dezvoltare bazată pe teste
- Sprijin pentru dezvoltare paralelă
Lucruri de reținut la crearea aplicației MVC
Iată câteva lucruri utile în acest tutorial ASP.NET MVC pe care trebuie să le rețineți pentru a crea aplicația MVC:
- Trebuie să rețineți că ASP .net MVC NU este un înlocuitor al aplicațiilor bazate pe formulare web ASP.Net
- Abordarea dezvoltării aplicației MVC trebuie decisă pe baza cerințelor aplicației și a caracteristicilor furnizate de ASP .net MVC pentru a se potrivi nevoilor specifice de dezvoltare.
- Procesul de dezvoltare a aplicațiilor cu ASP .NET MVC este mai complex în comparație cu aplicațiile bazate pe formulare web.
- Mentenabilitatea aplicației va fi întotdeauna mai mare odată cu separarea sarcinilor aplicației.
MVC este un model de arhitectură software care urmează metoda de separare a preocupărilor. În acest model, aplicațiile .Net sunt împărțite în trei părți interconectate care se numesc Model, View și Controller.
Scopul modelului MVC este ca fiecare dintre aceste părți să poată fi dezvoltată, testată relativ izolat și, de asemenea, combinată pentru a crea o aplicație foarte robustă.
Să le vedem pe toate în detaliu:
modele
Obiectele model sunt părți ale aplicației care implementează logica aplicației domeniul de date. Preia și stochează starea modelului într-o bază de date. De exemplu, obiectul produs poate prelua informații de la a Baza de date, operați pe el. Apoi scrieți informații înapoi în tabelul de produse din serverul SQL.
Vizualizări
Vizualizările sunt componentele care sunt folosite pentru a afișa interfața cu utilizatorul (UI) a aplicației, numită și model de vizualizare în MVC. Afișează aplicația .Net MVC care este creată din datele modelului.
Exemplul comun ar fi o vizualizare de editare a unui tabel de articole. Afișează casete de text, ferestre pop-up și casete de bifare în funcție de starea curentă a produselor și obiectului.
operator de date cu caracter personal,
Controlerele se ocupă de interacțiunea utilizatorului, lucrează cu modelul și selectează o vizualizare pentru a reda acea afișare Ul. Într-o aplicație .Net MVC, vizualizarea afișează numai informații, controlerul gestionează și răspunde la intrarea și interacțiunea utilizatorului folosind filtre de acțiune în MVC.
De exemplu, controlerul gestionează valorile șirurilor de interogare și transmite acele valori modelului.
Formulare Web vs. MVC
parametrii | WebFroms | MVC |
---|---|---|
Modele Usi | Formularele Web Asp.Net urmează modelul de dezvoltare bazat pe evenimente. | Asp.Net MVC utilizează modelul de dezvoltare bazat pe modele MVC. |
Folosit de când | Exista din 2002 | A fost lansat pentru prima dată în 2009 |
Suport pentru starea Vizualizare | Formularul Web Asp.Net acceptă starea de vizualizare pentru gestionarea stării la nivelul clientului. | .Net MVC nu acceptă starea de vizualizare. |
tipul URL | Formularul Web Asp.Net are adrese URL bazate pe fișiere. Înseamnă că numele fișierului există în adresele URL și trebuie să existe fizic. | Asp.Net MVC are URL-uri bazate pe rută, ceea ce înseamnă adrese URL care sunt redirecționate către controlori și acțiuni. |
Sintaxă | Asp.Net MVC urmează sintaxa Web Forms. | Asp.Net MVC urmează sintaxa personalizabilă. |
Tip de vizualizare | Web Form, vizualizările sunt strâns cuplate cu Codul din spate (ASPX-CS), adică cu logica. | MVC, vizualizările și logica sunt întotdeauna păstrate separat. |
Aspect și senzații consistente | Are pagini principale pentru un aspect consistent. | Asp.Net MVC are machete pentru un aspect consistent. |
Reutilizarea codului | Formularul Web oferă controale utilizator pentru reutilizarea codului. | Asp.Net MVC a oferit vizualizări parțiale pentru reutilizarea codului. |
Control pentru HTML | Less control asupra HTML redat. | Control deplin asupra HTML |
Conducerea statului | Gestionarea automată a stării controalelor. | Management manual de stat. |
Suport TDD | Este necesar un TDD slab sau personalizat. | Încurajează și include TDD! |
Avantajele ASP.NET MVC
- Aplicații foarte ușor de întreținut în mod implicit
- Vă permite să înlocuiți orice componentă a aplicației.
- Suport mai bun pentru dezvoltarea bazată pe teste
- Aplicațiile complexe sunt ușor de gestionat datorită diviziilor de model, vizualizare și controlere.
- Oferind un mecanism robust de rutare cu model de control frontal
- Oferă un control mai bun asupra comportamentului aplicației cu eliminarea stării de vizualizare și a formularelor bazate pe server
- Aplicațiile .Net MVC sunt susținute de echipe mari de dezvoltatori și web designeri
- Oferă mai mult control asupra comportamentelor aplicației. De asemenea, utilizează o lățime de bandă optimizată pentru cererile adresate serverului
Dezavantajele ASP.NET MVC
- Nu puteți vedea previzualizarea paginii de design ca pagina .aspx.
- Trebuie să rulați programul de fiecare dată pentru a vedea designul real al acestuia.
- Înțelegerea fluxului aplicației poate fi o provocare
- Este destul de complicat de implementat, așa că nu este o opțiune ideală pentru aplicații de nivel mic
- Este greu să înveți MVC pentru ASP.NET, deoarece necesită o mare înțelegere a modelului MVC
Cele mai bune practici în timpul utilizării ASP.Net MVC
- Creați un ansamblu separat pentru MODEL în cazul unui cod mare și complex pentru a evita orice situație nedorită o
- Modelul ar trebui să includă logica de afaceri, întreținerea sesiunii, partea de validare și partea logică a datelor.
- VIEW nu trebuie să conțină nicio logică de afaceri și întreținere a sesiunii, utilizați ViewData pentru a accesa datele din View
- Logica de afaceri și accesul la date nu ar trebui să apară niciodată în ControllerViewData
- Controlorul ar trebui să fie responsabil doar pentru pregătirea și returnarea unei vizualizări, model de apelare, redirecționare către acțiune etc.
- Ștergeți codul Demo din aplicație când îl creați. Ștergeți AccountController
- Utilizați numai un motor de vizualizare specific pentru a crea markup HTML din vizualizarea dvs., deoarece este o combinație de HTML și codul de programare.
Rezumat
- ASP.NET MVC este un cadru de dezvoltare web open source de la Microsoft care oferă un Arhitectura model View Controller.
- ASP.net MVC oferă o alternativă la formularele web ASP.net pentru construirea de aplicații web.
- Principala problemă cu ASP.net webForms este performanța.
- ASP.net MVC oferă testabilitate ușoară și fără frecare, cu control complet asupra HTML și URL-uri.
- Trebuie să rețineți că ASP .net MVC NU este un înlocuitor al aplicațiilor bazate pe formulare web ASP.Net.
- Abordarea dezvoltării aplicației MVC sau a ciclului de viață ASP.NET MVC trebuie decisă pe baza cerințelor aplicației și a caracteristicilor furnizate de ASP .net MVC pentru a se potrivi nevoilor specifice de dezvoltare.
- ASP.NET MVC oferă implicit aplicații foarte ușor de întreținut.
- Cu ASP.net nu puteți vedea previzualizarea paginii de design ca pagina .aspx.
- Ca cea mai bună practică, modelul ar trebui să includă logica de afaceri, întreținerea sesiunii, partea de validare și partea logică a datelor.