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
parametre | 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.