ASP.NET MVC-handledning för nybörjare: Vad är, Architecture

Vad är ASP.NET MVC?

ASP.NET MVC är ett ramverk för webbutveckling med öppen källkod från Microsoft som ger en Model View Controller-arkitektur. ASP.net MVC erbjuder ett alternativ till ASP.net webbformulär för att bygga webbapplikationer. Det är en del av .Net-plattformen för att bygga, distribuera och köra webbappar. Du kan utveckla webbappar och webbplatser med hjälp av HTML, CSS, jQuery, JavascriptEtc.

Lär dig MVC med denna ASP.NET MVC-handledning som täcker alla grundläggande begrepp för MVC för nybörjare:

Varför ASP.net MVC?

Även om webbformulär var mycket framgångsrika, Microsoft tänkte utveckla ASP.net MVC. Huvudproblemet med ASP.net webForms är prestanda.

I en webbapplikation, det finns fyra huvudaspekter som definierar prestanda:-

  • Svarstidsfrågor
  • Problem med enhetstestning
  • HTML-anpassning
  • Återanvändbarhet av kod-bakom-klassen

ASP.net MVC utmärker sig på ovanstående parametrar.

Versionshistorik för MVC

ASP.NET MVC1

  • Släppt den 13 mars 2009
  • Den körs på.NET 3.5
  • Visual Studio 2008
  • MVC-mönsterarkitektur med WebForm Engine
  • Huvudfunktioner inkluderar HTML & Enhetstestning, Ajax Helpers, Routing, etc.

ASP.NET MVC2

  • Denna version släpptes den 10 mars 2010
  • Körs på .NET 3.5,4.0 och med Microsoft Visual Studio 2008
  • Inkludera funktioner som Templated helpers, Ul-helpers med automatiska ställningar och anpassningsbara mallar
  • Det stöder DataAnnotations-attribut för att tillämpa modellvalidering på klient- och serversidor

ASP.NET MVC3

  • Den släpptes den 13 januari 2011
  • Körs på .NET 4.0 och med Microsoft Visual Studio 2010
  • Användning av NuGet att leverera programvara och låter dig hantera beroenden över hela plattformen
  • Bättre JavaSkriptstöd med jQuery-validering och JSON-bindning
  • Den erbjuder funktioner som Razor view-motorn; förbättrade Data Annotations-attribut för modellvalidering på både klient- och serversidan

ASP.NET MVC4

  • Denna version släpptes i augusti 2012
  • Den körs på .NET 4.0, 4.5 och med Visual Studio 2010 och Visual Studio 2012
  • Förbättringar av standardprojektmallar
  • Erbjuder funktioner som mobil projektmall med jQuery Mobile, uppgiftsstöd för asynkrona kontroller, buntning, minifiering, etc.

ASP.NET MVC5

  • Släpptes den 17 oktober 2013
  • Körs på .NET 4.5, 4.5.1 och med Visual Studio 2012 och Visual OneASP.NET
  • Stöder attributrouting i MVC

Funktioner hos MVC

  • Enkel och friktionsfri testbarhet
  • Full kontroll över din HTML, JavaSkript och webbadresser
  • Utnyttja befintliga ASP.Net Funktioner
  • Ett nytt presentationsalternativ för ASP.Net
  • Ett enklare sätt att programmera Asp.Net
  • Tydlig separation av logik: Modell, View, Controller
  • Testdriven utveckling
  • Stöd till parallell utveckling

Saker att komma ihåg när du skapar MVC Application

Här är några användbara saker i denna ASP.NET MVC-handledning som du måste komma ihåg för att skapa MVC-applikation:

  • Du måste komma ihåg att ASP .net MVC INTE är en ersättning för ASP.Net webbformulärbaserade applikationer
  • Tillvägagångssättet för MVC-apputveckling måste bestämmas baserat på applikationskraven och funktionerna som tillhandahålls av ASP .net MVC för att passa de specifika utvecklingsbehoven.
  • Applikationsutvecklingsprocessen med ASP .NET MVC är mer komplex jämfört med webbformulärbaserade applikationer.
  • Applikationsunderhållbarheten är alltid högre med separation av applikationsuppgifter.
MVC arkitektoniskt mönster
MVC arkitektoniskt mönster

MVC är ett mjukvaruarkitekturmönster som följer separationsmetoden. I denna modell är .Net-applikationer uppdelade i tre sammankopplade delar som kallas Model, View och Controller.

Målet med MVC-mönstret är att var och en av dessa delar kan utvecklas, testas i relativ isolering och även kombineras för att skapa en mycket robust applikation.

Låt se dem alla i detalj:

Modeller

Modellobjekt är delar av applikationen som implementerar logiken för applikationens datadomän. Den hämtar och lagrar modelltillstånd i en databas. Till exempel kan produktobjekt hämta information från en databas, operera på det. Skriv sedan tillbaka information till produkttabellen i SQL-servern.

Visningar

Views är de komponenter som används för att visa applikationens användargränssnitt (UI) även kallat viewmodel i MVC. Den visar .Net MVC-applikationen som skapas från modelldata.

Det vanliga exemplet skulle vara en redigeringsvy av en artikeltabell. Den visar textrutor, popup-fönster och kryssrutor baserat på det aktuella tillståndet för produkter och objekt.

Regulator

Styrenheter hanterar användarinteraktion, arbetar med modellen och väljer en vy för att återge den displayen Ul. I en .Net MVC-app visar vyn endast information, styrenheten hanterar och svarar på användarinput och interaktion med hjälp av åtgärdsfilter i MVC.

Till exempel hanterar styrenheten frågesträngsvärden och skickar dessa värden till modellen.

Webbformulär kontra MVC

Driftparametrar WebFroms MVC
Modell Asp.Net Web Forms följer händelsedriven utvecklingsmodell. Asp.Net MVC använder MVC-mönsterbaserad utvecklingsmodell.
Används sedan Har funnits sedan 2002 Den släpptes första gången 2009
Stöd för View state Asp.Net Web Form stöder visningstillstånd för tillståndshantering på klientsidan. .Net MVC stöder inte visningstillstånd.
URL-typ Asp.Net Web Form har filbaserade URL:er. Det betyder att filnamnet finns i webbadresserna och att de måste finnas fysiskt. Asp.Net MVC har ruttbaserade URL:er som betyder URL:er som omdirigeras till kontroller och åtgärder.
syntax Asp.Net MVC följer syntaxen för webbformulär. Asp.Net MVC följer den anpassningsbara syntaxen.
Visa typ Web Form, vyer är tätt kopplade till kod bakom (ASPX-CS), dvs logik. MVC, vyer och logik hålls alltid separat.
Konsekvent utseende och känsla Den har huvudsidor för ett konsekvent utseende. Asp.Net MVC har layouter för ett konsekvent utseende.
Kod Återanvändbarhet Web Form erbjuder användarkontroller för återanvändning av kod. Asp.Net MVC har erbjudit partiella vyer för återanvändning av kod.
Kontroll för HTML Less kontroll över renderad HTML. Full kontroll över HTML
Statlig ledning Automatisk tillståndshantering av kontroller. Manuell tillståndshantering.
TDD-stöd Svag eller anpassad TDD krävs. Uppmuntrar och inkluderar TDD!

Fördelar med ASP.NET MVC

  • Mycket underhållbara applikationer som standard
  • Det låter dig ersätta vilken komponent som helst i applikationen.
  • Bättre stöd för testdriven utveckling
  • Komplexa applikationer är lätta att hantera på grund av uppdelningar av modell, vy och styrenheter.
  • Erbjuder robust dirigeringsmekanism med frontkontrollmönster
  • Erbjuder bättre kontroll över applikationsbeteende med eliminering av visningstillstånd och serverbaserade formulär
  • .Net MVC-applikationer stöds av stora team av utvecklare och webbdesigners
  • Det ger mer kontroll över applikationens beteende. Den använder också en optimerad bandbredd för förfrågningar till servern

Nackdelar med ASP.NET MVC

  • Du kan inte se förhandsgranskning av designsidan som .aspx-sidan.
  • Du måste köra programmet varje gång för att se den faktiska designen.
  • Att förstå flödet i applikationen kan vara utmanande
  • Det är ganska komplicerat att implementera, så det är inte ett idealiskt alternativ för applikationer på små nivåer
  • Det är svårt att lära sig MVC för ASP.NET, eftersom det kräver en stor förståelse för MVC-mönster

Bästa metoder när du använder ASP.Net MVC

  • Skapa en separat sammansättning för MODELL vid stor och komplex kod för att undvika oönskade situationer o
  • Modellen bör inkludera affärslogik, sessionsunderhåll, valideringsdel och datalogikdel.
  • VIEW ska inte innehålla någon affärslogik och sessionsunderhåll, använd ViewData för att komma åt data i View
  • Affärslogik och dataåtkomst bör aldrig förekomma i ControllerViewData
  • Den registeransvarige ska endast ansvara för att förbereda och returnera en vy, anropsmodell, omdirigering till handling, etc.
  • Ta bort demokod från applikationen när du skapar den. Ta bort AccountController
  • Använd endast specifik visningsmotor för att skapa HTML-uppmärkning från din vy eftersom det är en kombination av HTML och programmeringskoden.

Sammanfattning

  • ASP.NET MVC är ett ramverk för webbutveckling med öppen källkod från Microsoft som ger en Model View Controller-arkitektur.
  • ASP.net MVC erbjuder ett alternativ till ASP.net webbformulär för att bygga webbapplikationer.
  • Huvudproblemet med ASP.net webForms är prestanda.
  • ASP.net MVC erbjuder enkel och friktionsfri testbarhet med full kontroll över dina HTML och webbadresser.
  • Du måste komma ihåg att ASP .net MVC INTE är en ersättning för ASP.Net webbformulärbaserade applikationer.
  • Tillvägagångssättet för MVC-apputveckling eller ASP.NET MVC Life Cycle måste bestämmas baserat på applikationskraven och funktionerna som tillhandahålls av ASP .net MVC för att passa de specifika utvecklingsbehoven.
  • ASP.NET MVC erbjuder mycket underhållbara applikationer som standard.
  • Med ASP.net kan du inte se förhandsgranskning av designsidan som .aspx-sidan.
  • Som en bästa praxis bör modellen inkludera affärslogik, sessionsunderhåll, valideringsdel och datalogikdel.

Sammanfatta detta inlägg med: