ASP.NET MVC-Tutorial für Anfänger: Was ist, Architektur
⚡ Intelligente Zusammenfassung
ASP.NET MVC ist die Open-Source-Plattform. Microsoft Ein Framework, das eine Webanwendung in Model-, View- und Controller-Schichten unterteilt und Entwicklern die volle Kontrolle über HTML, testbaren Code, sauberes Routing und eine schlanke Alternative zu klassischen Web Forms bietet.
Was ist ASP.NET MVC?
ASP.NET MVC ist ein Open-Source-Webentwicklungs-Framework von Microsoft ASP.NET MVC bietet eine Model-View-Controller-Architektur und stellt eine Alternative zu ASP.NET Web Forms für die Entwicklung von Webanwendungen dar. Es ist Bestandteil der .NET-Plattform und dient der Erstellung, Bereitstellung und Ausführung von Webanwendungen. Mithilfe von HTML, CSS und jQuery können Sie Webanwendungen und Websites entwickeln. JavaSkript usw.
Lernen Sie MVC mit diesem ASP.NET MVC-Tutorial, das alle grundlegenden Konzepte von MVC für Anfänger abdeckt:
Warum ASP.NET MVC?
Obwohl Webformulare sehr erfolgreich waren, Microsoft Gedanke an die Entwicklungping ASP.NET MVC. Das Hauptproblem bei ASP.NET webForms ist die Performance.
Kurz und Web-AnwendungEs gibt vier Hauptaspekte, die die Leistung definieren:
- Probleme mit der Reaktionszeit
- Problem des Unit-Tests
- HTML-Anpassung
- Wiederverwendbarkeit der Code-Behind-Klasse
ASP.NET MVC zeichnet sich durch die oben genannten Parameter aus.
Versionsgeschichte von MVC
ASP.NET MVC1
- Veröffentlicht am 13. März 2009
- Es läuft unter .NET 3.5
- Visual Studio 2008
- MVC-Musterarchitektur mit WebForm Engine
- Zu den Hauptfunktionen gehören HTML und Unit Tests, Ajax-Helfer, Routing usw.
ASP.NET MVC2
- Diese Version wurde am 10. März 2010 veröffentlicht
- Läuft unter .NET 3.5, 4.0 und mit Microsoft Visual Studio 2008
- Funktionen wie Vorlagenhilfen, UI-Hilfsfunktionen mit automatischem Gerüst und anpassbaren Vorlagen einbeziehen
- Es unterstützt DataAnnotations-Attribute, um die Modellvalidierung auf Client- und Serverseite anzuwenden
ASP.NET MVC3
- Es wurde am 13. Januar 2011 veröffentlicht
- Läuft unter .NET 4.0 und mit Microsoft Visual Studio 2010
- Verwendung von NuGet zur Bereitstellung von Software und ermöglicht Ihnen die Verwaltung von Abhängigkeiten auf der gesamten Plattform
- Arbeitsumgebungen JavaSkriptunterstützung mit jQuery-Validierung und JSON-Bindung
- Es bietet Funktionen wie die Razor-View-Engine und erweiterte Datenanmerkungsattribute für die Modellvalidierung sowohl client- als auch serverseitig.
ASP.NET MVC4
- Diese Version wurde im August 2012 veröffentlicht
- Es läuft auf .NET 4.0, 4.5 und mit Visual Studio 2010 und Visual Studio 2012
- Verbesserungen an Standardprojektvorlagen
- Bietet Funktionen wie mobile Projektvorlagen mit jQuery Mobile, Task-Unterstützung für asynchrone Controller, Bündelung, Minimierung usw.
ASP.NET MVC5
- Veröffentlicht am 17. Oktober 2013
- Läuft unter .NET 4.5, 4.5.1 und mit Visual Studio 2012 & Visual Studio 2013
- Unterstützt Attributrouting in MVC
Funktionen von MVC
- Einfache und reibungslose Testbarkeit
- Volle Kontrolle über Ihr HTML, JavaSkript und URLs
- Vorhandenes nutzen ASP.Netto Eigenschaften
- Eine neue Präsentationsoption für ASP.NET
- Eine einfachere Art, ASP.NET zu programmieren
- Klare Trennung der Logik: Modell, Ansicht, Controller
- Testgetriebene Entwicklung
- Unterstützung für parallele Entwicklung
Dinge, die Sie beim Erstellen einer MVC-Anwendung beachten sollten
Hier sind einige nützliche Dinge in diesem ASP.NET MVC-Tutorial, die Sie beim Erstellen einer MVC-Anwendung beachten müssen:
- Sie sollten sich vor Augen halten, dass ASP.NET MVC kein Ersatz für ASP.NET-Webforms-basierte Anwendungen ist.
- Die Vorgehensweise bei der MVC-Anwendungsentwicklung muss auf der Grundlage der Anwendungsanforderungen und der von ASP.NET MVC bereitgestellten Funktionen gewählt werden, um den spezifischen Entwicklungsbedürfnissen gerecht zu werden.
- Der Anwendungsentwicklungsprozess mit ASP.NET MVC ist komplexer als bei webformularbasierten Anwendungen.
- Durch die Trennung der Anwendungsaufgaben ist die Wartbarkeit der Anwendung immer höher.
MVC-Architekturmuster
MVC ist ein Softwarearchitekturmuster, das dem Prinzip der Trennung von Belangen folgt. In diesem Modell werden .NET-Anwendungen in drei miteinander verbundene Teile unterteilt: Model, View und Controller.
Das Ziel des MVC-Musters besteht darin, dass jeder dieser Teile relativ isoliert entwickelt, getestet und auch kombiniert werden kann, um eine sehr robuste Anwendung zu erstellen.
Schauen wir sie uns alle im Detail an:
Models
Modellobjekte sind Teile der Anwendung, die die Logik für die Anwendung implementieren Datendomäne. Es ruft den Modellstatus ab und speichert ihn in einer Datenbank. Beispielsweise könnte ein Produktobjekt Informationen von einem abrufen Datenbank, bearbeiten Sie es. Schreiben Sie dann die Informationen zurück in die Produkttabelle im SQL-Server.
Aufrufe
Views sind die Komponenten, die zur Anzeige der Benutzeroberfläche (UI) der Anwendung verwendet werden, im MVC-Modell auch ViewModel genannt. Sie zeigen die Benutzeroberfläche der .NET MVC-Anwendung an, die aus den Modelldaten erstellt wird.
Ein typisches Beispiel wäre die Bearbeitungsansicht einer Artikeltabelle. Sie zeigt Textfelder, Popups und Kontrollkästchen basierend auf dem aktuellen Status von Produkten und Objekten an.
Controller
Controller verarbeiten die Benutzerinteraktion, arbeiten mit dem Modell und wählen eine Ansicht aus, die die Benutzeroberfläche darstellt. In einer .NET MVC-Anwendung zeigt die Ansicht lediglich Informationen an; der Controller verwaltet und reagiert auf Benutzereingaben und -interaktionen mithilfe von Aktionsfiltern in MVC.
Beispielsweise verwaltet der Controller Abfragezeichenfolgenwerte und übergibt diese Werte an das Modell.
Webformulare vs. MVC
| Kenngrößen | Webformulare | MVC |
|---|---|---|
| Modell | ASP.NET Web Forms folgen dem ereignisgesteuerten Entwicklungsmodell. | ASP.NET MVC verwendet ein auf dem MVC-Muster basierendes Entwicklungsmodell. |
| Benutzt seit | Gibt es seit 2002 | Es wurde erstmals 2009 veröffentlicht |
| Unterstützung für den Ansichtsstatus | ASP.NET Web Forms unterstützt ViewState für die Zustandsverwaltung auf Clientseite. | .NET MVC unterstützt keinen Ansichtszustand. |
| URL tippe | ASP.NET Web Forms ist dateibasiert. URLs. Es bedeutet, dass der Dateiname in der Datei existiert. URLs und sie müssen physisch existieren. | ASP.NET MVC verfügt über routenbasierte Architekturen. URLDas bedeutet URLs, die an Controller und Aktionen weitergeleitet werden. |
| Syntax | ASP.NET Web Forms folgen der Web Forms Syntax. | ASP.NET MVC folgt der anpassbaren Syntax. |
| Ansichtstyp | Webformular, Ansichten sind eng miteinander verknüpft Code hinter (ASPX-CS), d.h. Logik. | MVC, Ansichten und Logik werden immer getrennt gehalten. |
| Einheitliches Erscheinungsbild | Es verfügt über Masterseiten für ein einheitliches Erscheinungsbild. | ASP.NET MVC verfügt über Layouts für ein einheitliches Erscheinungsbild. |
| Code Wiederverwendbarkeit | Web Form bietet Benutzersteuerelemente für die Wiederverwendbarkeit von Code. | ASP.NET MVC bietet partielle Ansichten zur Wiederverwendbarkeit von Code. |
| Steuerung für HTML | Less Kontrolle über gerendertes HTML. | Volle Kontrolle über HTML |
| Staatliche Verwaltung | Automatische Zustandsverwaltung von Kontrollen. | Manuelle Zustandsverwaltung. |
| TDD-Unterstützung | Schwaches oder benutzerdefiniertes TDD erforderlich. | Fördert und beinhaltet TDD. |
Vorteile von ASP.NET MVC
- Standardmäßig äußerst wartbare Anwendungen
- Es ermöglicht Ihnen, jede beliebige Komponente der Anwendung zu ersetzen.
- Bessere Unterstützung für testgetriebene Entwicklung
- Komplexe Anwendungen sind aufgrund der Aufteilung in Modell, Ansicht und Controller leicht zu verwalten.
- Bietet einen robusten Routing-Mechanismus mit Front-Controller-Muster
- Bietet eine bessere Kontrolle über das Anwendungsverhalten durch Eliminierung von Ansichtsstatus und serverbasierten Formularen
- .NET MVC-Anwendungen werden von großen Entwicklerteams und Webdesignern unterstützt.
- Es bietet mehr Kontrolle über das Verhalten der Anwendung. Außerdem wird eine optimierte Bandbreite für Anfragen an den Server verwendet
Nachteile von ASP.NET MVC
- Sie können keine Designseitenvorschau wie bei der .aspx-Seite sehen.
- Sie müssen das Programm jedes Mal ausführen, um sein tatsächliches Design zu sehen.
- Den Ablauf der Anwendung zu verstehen, kann eine Herausforderung sein
- Die Implementierung ist ziemlich kompliziert und daher keine ideale Option für Anwendungen auf kleinem Niveau
- Es ist schwierig, MVC für ASP.NET zu erlernen, da hierfür ein umfassendes Verständnis des MVC-Musters erforderlich ist
Bewährte Vorgehensweisen bei der Verwendung von ASP.NET MVC
- Erstellen Sie bei großem und komplexem Code eine separate Assembly für MODEL, um unerwünschte Situationen zu vermeiden.
- Das Modell sollte Geschäftslogik, Sitzungswartung, Validierungsteil und Datenlogikteil umfassen.
- VIEW sollte keine Geschäftslogik und Sitzungswartung enthalten. Verwenden Sie ViewData, um auf Daten in View zuzugreifen
- Geschäftslogik und Datenzugriff sollten niemals im Controller erfolgen.
- Der Controller sollte nur für die Vorbereitung und Rückgabe einer Ansicht, den Aufruf des Modells, die Weiterleitung zur Aktion usw. verantwortlich sein.
- Löschen Sie den Demo-Code aus der Anwendung, wenn Sie sie erstellen (AccountController löschen).
- Verwenden Sie nur eine bestimmte Ansichts-Engine, um HTML-Markup aus Ihrer Ansicht zu erstellen, da es sich um eine Kombination aus HTML und Programmiercode handelt.


