ASP.NET MVC Tutorial for begyndere: Hvad er, Architecture
Hvad er ASP.NET MVC?
ASP.NET MVC er en open source webudviklingsramme fra Microsoft der giver en Model View Controller-arkitektur. ASP.net MVC tilbyder et alternativ til ASP.net webformularer til opbygning af webapplikationer. Det er en del af .Net-platformen til at bygge, implementere og kรธre webapps. Du kan udvikle webapps og websteder ved hjรฆlp af HTML, CSS, jQuery, JavascriptOsv
Lรฆr MVC med denne ASP.NET MVC-tutorial, som dรฆkker alle de grundlรฆggende begreber i MVC for begyndere:
Hvorfor ASP.net MVC?
Selvom webformularer var meget vellykkede, Microsoft tรฆnkte pรฅ at udvikle ASP.net MVC. Hovedproblemet med ASP.net webForms er ydeevne.
I en webapplikation, er der fire hovedaspekter, der definerer ydeevne:-
- Svartidsproblemer
- Problem med enhedstestning
- HTML tilpasning
- Genanvendelighed af kode-behind-klassen
ASP.net MVC udmรฆrker sig pรฅ ovenstรฅende parametre.
Versionshistorik for MVC
ASP.NET MVC1
- Udgivet den 13. marts 2009
- Den kรธrer pรฅ.NET 3.5
- Visual Studio 2008
- MVC-mรธnsterarkitektur med WebForm Engine
- Hovedfunktioner inkluderer HTML & Enhedstest, Ajax Helpers, Routing osv.
ASP.NET MVC2
- Denne version udgivet den 10. marts 2010
- Kรธrer pรฅ .NET 3.5,4.0 og med Microsoft Visual Studio 2008
- Inkluder funktioner som skabelonhjรฆlpere, Ul-hjรฆlpere med automatisk stillads og tilpasselige skabeloner
- Det understรธtter DataAnnotations-attributter til at anvende modelvalidering pรฅ klient- og serversider
ASP.NET MVC3
- Den blev udgivet den 13. januar 2011
- Kรธrer pรฅ .NET 4.0 og med Microsoft Visual Studio 2010
- Brug af NuGet til at levere software og giver dig mulighed for at administrere afhรฆngigheder pรฅ tvรฆrs af platformen
- Bedre JavaScript-understรธttelse med jQuery-validering og JSON-binding
- Det tilbyder funktioner som Razor view-motoren; forbedrede Data Annotations-attributter til modelvalidering pรฅ bรฅde klient- og serversiden
ASP.NET MVC4
- Denne version blev udgivet i august 2012
- Den kรธrer pรฅ .NET 4.0, 4.5 og med Visual Studio 2010 og Visual Studio 2012
- Forbedringer til standardprojektskabeloner
- Tilbyder funktioner som mobil projektskabelon ved hjรฆlp af jQuery Mobile, opgaveunderstรธttelse til asynkrone controllere, bundling, minifikation osv.
ASP.NET MVC5
- Udgivet den 17. oktober 2013
- Kรธrer pรฅ .NET 4.5, 4.5.1 og med Visual Studio 2012 & Visual OneASP.NET
- Understรธtter attributrouting i MVC
Funktioner af MVC
- Nem og friktionsfri testbarhed
- Fuld kontrol over din HTML, JavaScript og URL'er
- Udnyt eksisterende ASP.Net Funktionalitet
- En ny prรฆsentationsmulighed til ASP.Net
- En enklere mรฅde at programmere Asp.Net pรฅ
- Klar adskillelse af logik: Model, View, Controller
- Testdrevet udvikling
- Stรธtte til parallel udvikling
Ting at huske, mens du opretter MVC-applikationen
Her er et par nyttige ting i denne ASP.NET MVC-tutorial, som du skal huske for at oprette MVC-applikation:
- Du skal huske, at ASP .net MVC IKKE er en erstatning for ASP.Net webformularbaserede applikationer
- Fremgangsmรฅden for MVC-appudvikling skal besluttes baseret pรฅ applikationskravene og funktionerne fra ASP .net MVC for at passe til de specifikke udviklingsbehov.
- Applikationsudviklingsprocessen med ASP .NET MVC er mere kompleks sammenlignet med webformularbaserede applikationer.
- Applikationsvedligeholdelse er altid hรธjere med adskillelse af applikationsopgaver.

MVC er et softwarearkitekturmรธnster, som fรธlger metoden med separation af bekymringer. I denne model er .Net-applikationer opdelt i tre indbyrdes forbundne dele, som kaldes Model, View og Controller.
Mรฅlet med MVC-mรธnsteret er, at hver af disse dele kan udvikles, testes i relativ isolation og ogsรฅ kombineres for at skabe en meget robust applikation.
Lad os se dem alle i detaljer:
Modeller
Modelobjekter er dele af applikationen, som implementerer logikken for applikationens data domรฆne. Den henter og gemmer modeltilstand i en database. For eksempel kan produktobjekt hente information fra en database, operere pรฅ det. Skriv derefter information tilbage til produkttabellen i SQL-serveren.
Views
Visninger er de komponenter, som bruges til at vise applikationens brugergrรฆnseflade (UI), ogsรฅ kaldet viewmodel i MVC. Den viser .Net MVC-applikationen, som er oprettet ud fra modeldataene.
Det almindelige eksempel ville vรฆre en redigeringsvisning af en varetabel. Det viser tekstbokse, pop-ups og afkrydsningsfelter baseret pรฅ den aktuelle tilstand for produkter og objekter.
controller
Controllere hรฅndterer brugerinteraktion, arbejder med modellen og vรฆlger en visning for at gengive denne visning Ul. I en .Net MVC-app viser visningen kun information, controlleren administrerer og reagerer pรฅ brugerinput og interaktion ved hjรฆlp af handlingsfiltre i MVC.
For eksempel administrerer controlleren forespรธrgselsstrengvรฆrdier og sender disse vรฆrdier til modellen.
Webformularer vs. MVC
| Driftsparametre | WebFroms | MVC |
|---|---|---|
| Model | Asp.Net Web Forms fรธlger begivenhedsdrevet udviklingsmodel. | Asp.Net MVC bruger MVC mรธnster baseret udviklingsmodel. |
| Brugt siden | Har eksisteret siden 2002 | Den blev udgivet fรธrste gang i 2009 |
| Understรธttelse af visningstilstand | Asp.Net Web Form understรธtter visningstilstand for tilstandsstyring pรฅ klientsiden. | .Net MVC understรธtter ikke visningstilstand. |
| URL-type | Asp.Net Web Form har filbaserede URL'er. Det betyder, at filnavnet findes i URL'erne, og at de skal eksistere fysisk. | Asp.Net MVC har rutebaserede URL'er, der betyder URL'er, som omdirigeres til controllere og handlinger. |
| Syntaks | Asp.Net MVC fรธlger webformularsyntaks. | Asp.Net MVC fรธlger den tilpasselige syntaks. |
| Vis type | Webformular, visninger er tรฆt koblet til Code behind(ASPX-CS), dvs. logik. | MVC, visninger og logik holdes altid adskilt. |
| Konsekvent udseende og fornemmelse | Den har mastersider for et ensartet udseende. | Asp.Net MVC har layouts for et ensartet udseende. |
| Kode Genanvendelighed | Webformular tilbyder brugerkontroller til genbrug af kode. | Asp.Net MVC har tilbudt delvise visninger for genbrug af kode. |
| Kontrol til HTML | Less kontrol over gengivet HTML. | Fuld kontrol over HTML |
| Statens ledelse | Automatisk tilstandsstyring af kontroller. | Manuel tilstandsstyring. |
| TDD support | Svag eller tilpasset TDD pรฅkrรฆvet. | Opmuntrer og inkluderer TDD! |
Fordele ved ASP.NET MVC
- Meget vedligeholdelsesvenlige applikationer som standard
- Det giver dig mulighed for at erstatte enhver komponent i applikationen.
- Bedre support til testdrevet udvikling
- Komplekse applikationer er nemme at administrere pรฅ grund af opdelinger af Model, View og Controllere.
- Tilbyder robust routingmekanisme med frontcontrollermรธnster
- Tilbyder bedre kontrol over applikationsadfรฆrd med eliminering af visningstilstand og serverbaserede formularer
- .Net MVC-applikationer understรธttes af store teams af udviklere og webdesignere
- Det giver mere kontrol over applikationens adfรฆrd. Den bruger ogsรฅ en optimeret bรฅndbredde til anmodninger til serveren
Ulemper ved ASP.NET MVC
- Du kan ikke se forhรฅndsvisning af designside som .aspx-siden.
- Du skal kรธre programmet hver gang for at se det faktiske design.
- At forstรฅ applikationens flow kan vรฆre udfordrende
- Det er ret kompliceret at implementere, sรฅ det er ikke en ideel mulighed for smรฅ applikationer
- Det er svรฆrt at lรฆre MVC til ASP.NET, da det krรฆver en stor forstรฅelse af MVC-mรธnster
Bedste รธver sig, mens du bruger ASP.Net MVC
- Opret en separat samling til MODEL i tilfรฆlde af stor og kompleks kode for at undgรฅ enhver uรธnsket situation o
- Modellen bรธr omfatte forretningslogik, sessionsvedligeholdelse, valideringsdel og datalogikdel.
- VIEW bรธr ikke indeholde nogen forretningslogik og sessionsvedligeholdelse, brug ViewData til at fรฅ adgang til data i View
- Forretningslogik og dataadgang bรธr aldrig forekomme i ControllerViewData
- Den registeransvarlige bรธr kun vรฆre ansvarlig for at udarbejde og returnere en visning, opkaldsmodel, omdirigering til handling osv.
- Slet demokode fra applikationen, nรฅr du opretter den Slet AccountController
- Brug kun specifik visningsmotor til at oprette HTML-markering fra din visning, da det er kombinationen af โโHTML og programmeringskoden.
Resumรฉ
- ASP.NET MVC er en open source webudviklingsramme fra Microsoft der giver en Model View Controller-arkitektur.
- ASP.net MVC tilbyder et alternativ til ASP.net webformularer til opbygning af webapplikationer.
- Hovedproblemet med ASP.net webForms er ydeevne.
- ASP.net MVC tilbyder nem og friktionsfri testbarhed med fuld kontrol over dine HTML og URL'er.
- Du skal huske, at ASP .net MVC IKKE er en erstatning for ASP.Net webformularbaserede applikationer.
- Tilgangen til MVC-appudvikling eller ASP.NET MVC-livscyklus skal besluttes ud fra de applikationskrav og funktioner, som ASP .net MVC leverer, for at passe til de specifikke udviklingsbehov.
- ASP.NET MVC tilbyder som standard applikationer, der kan vedligeholdes.
- Med ASP.net kan du ikke se forhรฅndsvisning af designside som .aspx-siden.
- Som en bedste praksis bรธr modellen omfatte forretningslogik, sessionsvedligeholdelse, valideringsdel og datalogikdel.
