ASP.NET MVC -opastus aloittelijoille: Mikä on, Archirakenne
⚡ Älykäs yhteenveto
ASP.NET MVC on avoimen lähdekoodin Microsoft kehys, joka erottaa verkkosovelluksen malli-, näkymä- ja ohjainkerroksiin, antaen kehittäjille täyden HTML-hallinnan, testattavan koodin, puhtaan reitityksen ja kevyen vaihtoehdon klassisille verkkolomakkeille.
Mikä on ASP.NET MVC?
ASP.NET MVC on avoimen lähdekoodin verkkokehityskehys Microsoft joka tarjoaa Model View Controller -arkkitehtuurin. ASP.NET MVC tarjoaa vaihtoehdon ASP.NET-verkkolomakkeille verkkosovellusten rakentamiseen. Se on osa .NET-alustaa verkkosovellusten rakentamiseen, käyttöönottoon ja suorittamiseen. Voit kehittää verkkosovelluksia ja verkkosivustoja HTML:n, CSS:n, jQueryn, JavaKäsikirjoitus jne.
Opi MVC tällä ASP.NET MVC -opetusohjelmalla, joka kattaa kaikki MVC:n peruskäsitteet aloittelijoille:
Miksi ASP.NET MVC?
Vaikka verkkolomakkeet olivat erittäin onnistuneita, Microsoft ajatus kehityksestäping ASP.NET MVC. ASP.NET webFormsin suurin ongelma on suorituskyky.
Jonkin sisällä Web-sovellus, on neljä päätekijää, jotka määrittelevät suorituskyvyn:-
- Vastausajan ongelmat
- Yksikkötestauksen ongelma
- HTML-muokkaus
- Koodin takana olevan luokan uudelleenkäyttö
ASP.NET MVC loistaa yllä mainituissa parametreissä.
MVC:n versiohistoria
ASP.NET MVC1
- Julkaistu 13. maaliskuuta 2009
- Se toimii .NET 3.5:ssä
- Visual Studio 2008
- MVC Pattern -arkkitehtuuri WebForm Enginen kanssa
- Tärkeimmät ominaisuudet sisältävät HTML- ja Yksikkötestaus, Ajax-avustajat, reititys jne.
ASP.NET MVC2
- Tämä versio julkaistiin 10. maaliskuuta 2010
- Toimii .NET 3.5-, 4.0- ja muissa käyttöjärjestelmissä Microsoft Visual Studio 2008
- Sisällytä ominaisuuksia, kuten mallipohjaiset apuohjelmat, käyttöliittymäapuohjelmat automaattisella telinealustalla ja mukautettavat mallipohjat
- Se tukee DataAnnotations-attribuutteja mallin validoinnin soveltamiseksi asiakas- ja palvelinpuolella
ASP.NET MVC3
- Se julkaistiin 13
- Toimii .NET 4.0, XNUMX ja sen kanssa Microsoft Visual Studio 2010
- N:n käyttöuGet ohjelmistojen toimittamiseen ja voit hallita riippuvuuksia alustalla
- Paremmin JavaSkriptituki jQuery-validoinnilla ja JSON-sidonnalla
- Se tarjoaa ominaisuuksia, kuten Razor-näkymämoottorin ja parannetut datamerkintäominaisuudet mallin validointiin sekä asiakas- että palvelinpuolella.
ASP.NET MVC4
- Tämä versio julkaistiin elokuussa 2012
- Se toimii .NET 4.0:ssa ja 4.5:ssä sekä Visual Studio 2010:n ja Visual Studio 2012:n kanssa
- Parannuksia oletusprojektimalleihin
- Tarjoaa ominaisuuksia, kuten jQuery Mobilea käyttävän mobiiliprojektimallin, tehtävätuen asynkronisille ohjaimille, niputuksen, pienentämisen jne.
ASP.NET MVC5
- Julkaistu 17. lokakuuta 2013
- Toimii .NET 4.5- ja 4.5.1-käyttöjärjestelmissä sekä Visual Studio 2012- ja Visual Studio 2013 -ohjelmistoilla
- Tukee attribuuttien reititystä MVC:ssä
MVC:n ominaisuudet
- Helppo ja kitkaton testattavuus
- HTML-koodin täysi hallinta, JavaKäsikirjoitus ja URLs
- Hyödynnä olemassa olevaa ASP.NET Ominaisuudet
- Uusi esitystapa ASP.NET:ille
- Yksinkertaisempi tapa ohjelmoida ASP.NETiä
- Selkeä logiikan erottelu: malli, näkymä, ohjain
- Testilähtöinen kehitys
- Tuki rinnakkaiskehitykseen
Muistettavaa MVC-sovellusta luotaessa
Tässä on muutamia hyödyllisiä asioita tässä ASP.NET MVC -opetusohjelmassa, jotka sinun on muistettava luodessasi MVC-sovellusta:
- Sinun on muistettava, että ASP.NET MVC EI korvaa ASP.NET-verkkolomakepohjaisia sovelluksia.
- MVC-sovelluskehityksen lähestymistapa on päätettävä sovellusvaatimusten ja ASP.NET MVC:n tarjoamien ominaisuuksien perusteella, jotta se sopisi tiettyihin kehitystarpeisiin.
- Sovelluskehitysprosessi ASP.NET MVC:llä on monimutkaisempi verrattuna verkkolomakepohjaisiin sovelluksiin.
- Sovelluksen ylläpidettävyys on aina parempi, kun sovellustehtävät erotetaan toisistaan.
MVC-arkkitehtuurimalli
MVC on ohjelmistoarkkitehtuurimalli, joka noudattaa huolenaiheiden erottelumenetelmää. Tässä mallissa .NET-sovellukset on jaettu kolmeen toisiinsa liittyvään osaan: malliin, näkymään ja ohjaimiin.
MVC-kuvion tavoitteena on, että jokaista näistä osista voidaan kehittää, testata suhteellisen erillään ja myös yhdistää luodakseen erittäin vankan sovelluksen.
Katsotaanpa niitä kaikkia yksityiskohtaisesti:
Mallit
Malliobjektit ovat sovelluksen osia, jotka toteuttavat sovelluksen logiikan data-alue. Se hakee ja tallentaa mallin tilan tietokantaan. Esimerkiksi tuoteobjekti voi hakea tietoja osoitteesta a tietokanta, käytä sitä. Kirjoita sitten tiedot takaisin tuotetaulukkoon SQL-palvelimessa.
Näyttökerrat
Näkymät ovat komponentteja, joita käytetään sovelluksen käyttöliittymän (UI) näyttämiseen. MVC:ssä niitä kutsutaan myös näkymämalliksi. Ne näyttävät mallidatasta luodun .NET MVC -sovelluksen.
Yleisin esimerkki on nimiketaulukon muokkausnäkymä. Se näyttää tekstilaatikot, ponnahdusikkunat ja valintaruudut tuotteiden ja objektin nykyisen tilan perusteella.
ohjain
Ohjaimet käsittelevät käyttäjän vuorovaikutusta, työskentelevät mallin kanssa ja valitsevat näkymän, joka renderöi käyttöliittymän. .NET MVC -sovelluksessa näkymä näyttää vain tietoja, ja ohjain hallitsee käyttäjän syötettä ja vuorovaikutusta sekä reagoi niihin MVC:n toimintosuodattimien avulla.
Ohjain esimerkiksi hallitsee kyselymerkkijonoarvoja ja välittää ne mallille.
Web Forms vs. MVC
| parametrit | Verkkolomakkeet | MVC |
|---|---|---|
| Malli | ASP.NET-verkkolomakkeet noudattavat tapahtumapohjaista kehitysmallia. | ASP.NET MVC käyttää MVC-mallipohjaista kehitysmallia. |
| Käytetty vuodesta | Ollut käytössä vuodesta 2002 | Se julkaistiin ensimmäisen kerran vuonna 2009 |
| View-tilan tuki | ASP.NET Web Form tukee näkymätilaa tilanhallintaa varten asiakaspuolella. | .NET MVC ei tue näkymätilaa. |
| URL tyyppi | ASP.NET-verkkolomakkeella on tiedostopohjainen URLs. Se tarkoittaa, että tiedostonimi on jo olemassa URLja niiden täytyy olla olemassa fyysisesti. | ASP.NET MVC:ssä on reittipohjainen URLse tarkoittaa URLs, jotka ohjataan ohjaimiin ja toimintoihin. |
| Syntaksi | ASP.NET-verkkolomakkeet noudattavat verkkolomakkeiden syntaksia. | ASP.NET MVC noudattaa muokattavissa olevaa syntaksia. |
| Näkymän tyyppi | Verkkolomake, näkymät ovat tiiviisti kytköksissä Code takana (ASPX-CS), eli logiikka. | MVC, näkymät ja logiikka säilytetään aina erikseen. |
| Yhtenäinen ulkonäkö ja tuntuma | Siinä on sivupohjat yhtenäisen ulkoasun takaamiseksi. | ASP.NET MVC:ssä on asetteluja yhtenäisen ulkoasun saavuttamiseksi. |
| Code Reus Kyky | Web Form tarjoaa käyttäjäohjaimet koodin uudelleenkäyttöä varten. | ASP.NET MVC on tarjonnut osittaisia näkymiä koodin uudelleenkäytettävyydestä. |
| HTML-hallinta | Less hallita renderöityä HTML:ää. | Täysi HTML-hallinta |
| Valtionhallinto | Ohjainten automaattinen tilanhallinta. | Manuaalinen tilanhallinta. |
| TDD tuki | Heikko tai mukautettu TDD vaaditaan. | Kannustaa ja sisällyttää TDD:n. |
ASP.NET MVC:n edut
- Hyvin ylläpidettävät sovellukset oletuksena
- Sen avulla voit korvata minkä tahansa sovelluksen osan.
- Parempi tuki testilähtöiselle kehitykselle
- Monimutkaisia sovelluksia on helppo hallita malli-, näkymä- ja ohjaimet-jaon ansiosta.
- Tarjoaa vankan reititysmekanismin etuohjainkuviolla
- Tarjoaa paremman hallinnan sovellusten käyttäytymiseen eliminoimalla näkymän tilan ja palvelinpohjaiset lomakkeet
- .NET MVC -sovelluksia tukevat suuret kehittäjien ja web-suunnittelijoiden tiimit.
- Se tarjoaa paremman hallinnan sovelluksen käyttäytymiseen. Se käyttää myös optimoitua kaistanleveyttä palvelimelle tehtyihin pyyntöihin
ASP.NET MVC:n haitat
- Et voi nähdä suunnittelusivun esikatselua kuten .aspx-sivua.
- Sinun on suoritettava ohjelma joka kerta nähdäksesi sen todellisen rakenteen.
- Sovelluksen kulun ymmärtäminen voi olla haastavaa
- Se on melko monimutkainen toteuttaa, joten se ei ole ihanteellinen vaihtoehto pienille sovelluksille
- On vaikea oppia MVC:tä ASP.NET:lle, koska se vaatii hyvää ymmärrystä MVC-kuviosta
Parhaat käytännöt ASP.NET MVC:n käytössä
- Luo erillinen MODEL-kokoonpano, jos koodi on laaja ja monimutkainen, välttääksesi ei-toivotut tilanteet.
- Mallin tulee sisältää liiketoimintalogiikka, istunnon ylläpito, validointiosa ja datalogiikkaosa.
- VIEW ei saa sisältää liiketoimintalogiikkaa ja istunnon ylläpitoa. Käytä ViewDataa nähdäksesi tiedot Viewissa
- Liiketoimintalogiikkaa ja datan käyttöä ei pitäisi koskaan tapahtua Controllerissa
- Rekisterinpitäjän tulee olla vastuussa vain näkymän, mallin kutsumisen, uudelleenohjauksen jne. valmistelusta ja palauttamisesta.
- Poista demokoodi sovelluksesta luomisen yhteydessä (Poista AccountController)
- Käytä vain tiettyä näkymämoottoria luodaksesi HTML-merkinnät näkymästäsi, koska se on HTML:n ja ohjelmointikoodin yhdistelmä.


