ASP.NET MVC
Höfundur Rúnar Þór Bjarnþórsson
Inngangur
breytaTilgangur með þessari grein er að útskýra virkni á MVC hugbúnaðarrammanum (MVC framework) á sem einfaldastan hátt þannig að þetta nýtist þeim sem eru að byrja að læra forritun og hægt að nýta sér í námi í Tölvunarfræði.
Asp.net MVC Framework
breytaAsp.net MVC Framework er þróunarumhverfi til að búa til vef hugbúnað, sem er þróað af Microsoft.
Undir asp.net eru tveir hugbúnaðarrammar MVC framework og Web Forms framework.
MVC stendur fyrir Model – View – Controller
Model: sér um gagna aðgang (data access) virkni og klasa sem snúa að gagna virkni (business Object) þetta eru venjulegir POCO klasar (Plain Old Class Objects).
View: er sniðmát sem formar upplýsingarnar fyrir vefvafrann (HTML markup eða annað format)
Controller: sér um samskiptin milli models og views og skilar niðurstöðunni út í vefþjóninn sem síðan er skilað út í vefvafrann.
Myndin sýnir hvernig högun á MVC virkar og hvernig samskiptin eiga sér stað.
Hér að neðan er lýsing á hvernig högunin virkar
MVC virkni
breyta- Fyrirspurn fer í gegnum asp.net stakkinn og er sent á vefþjóninn
- Í vefþjóninum er notaður routing engine til að finna þann controller sem á að nota
- Controllerinn sér um að hafa samband við viðkomandi model og view
- Modelið tekur við fyrirspurninni frá contollernum og vistar gögnin og skila þeim til controllersins.
- Controllerinn biður um viðeigandi view með gögnum frá viðeigandi model klasa
- Controllerinn skilar svo niðurstöðunni á vefþjóninn.
Þetta er mjög einfölduð mynd af þessari virkni en þetta er bara gert til að sýna byrjendum grunn virknina fyrir MVC högunina.
View
breytaView eru í raun HTML síða sem getur líka innihaldið JavaScript og CSSeins og venjulegar HTML síður.
Með tilkomu MVC 3.0 þá kom ný View engine sem kallast Razor sem tók við af eldri Webforms view engine.
HTML helpers klasar eru til að einfalda forritunina við búa til síður með ýmsum gagnatögum
Dæmi um Razor view syntax:
@Html.DisplayFor(modelItem => item.Name) @Html.TextBoxFor(modelItem => item.Description)
Partial views: þá er hægt að hafa eitt view sem virkar fyrir margar síður þ.e endurnota sama sniðmátið fyrir margar síður í stað þess að búa til margar síður sem eru í raun alveg eins.
Master pages/Layout pages: til að geta haft útlitið eins í gegnum allt kerfið.
View Model: þá er hægt að birta í einu view upplýsingar úr mörgum töflum.
Kostir við MVC
breytaKostur við að nota MVC mynstur í stað Web forms mynstur er að MVC er léttara í vinnslu og þróunaraðilinn hefur meira vald yfir hugbúnaðinum og virkni hans með því að nota þrískiptu lögin (layers) Model,View og Controller.
Einnig er einfaldara að framkvæma eininga prófanir með þessari högun.
MVC er mjög vinsæll vef hugbúnaðarrammi til að þróa veflausnir. Margir vinsælir hugbúnaðarrammar (frameworks) nota þessa högun og má þar helst nefna Visual Studio frá Microsoft og Ruby on Rails ,
Django fylgir líka model-view-controller mynstrinu eins og margir fleiri aðilar.
MVC útgáfur
breytaMVC útgáfur | Ár |
---|---|
MVC 1.0 | 2009 |
MVC 2.0 | 2010 |
MVC 3.0 | 2011 |
MVC 4.0 | 2012 |
MVC 5.0 | 2013 |
Með útgáfu 2.0 þá var þessi högun innbyggð í Visual Studio 2010.
Tenglar og heimildir
breytahttp://msdn.microsoft.com/en-us/library/ff649643.aspx
https://en.wikipedia.org/wiki/ASP.NET_MVC_Framework#View_engines
http://www.w3schools.com/aspnet/mvc_intro.asp
Mynd gerð í visio RB