Kuinka luoda modulaarinen web-sovellus C # MVC: hen

skenaario

Kun verkkosovelluksella on useita moduuleja (tai alisovelluksia / ominaisuuksia), se pyrkii kasvamaan. Joten mitä enemmän moduuleja kytket sovellukseen, sitä monimutkaisempi on osioida ja ylläpitää koodia.

Mikä on temppu tämän ratkaisemisessa?

Yksi ratkaisu yllä olevaan ongelmaan on sovellusmoduulien kehittäminen itsenäisesti, ilman mitään suoraa riippuvuutta keskuudestaan ​​ja myös pääsovelluskoodista. Kehittäjien tulee aina valita modulaarinen ratkaisu, jossa suurempia moduuleja ylläpidetään helposti ajan kuluessa erikseen. Kun jokainen moduuli on valmis integroitavaksi, ne voidaan sitten kytkeä pääsovellukseen pienellä tai ei säätämättä samaa.

Joten lyhyesti sanottuna, monimutkaisen asp.net MVC -sovelluksen rakennetta voidaan ylläpitää erittäin helposti alueilla. Tämän ajatuksena on, että voimme jakaa suuren kompleksisen sovelluksen useisiin pieniin osiin, joita kutsutaan alueiksi.

Näillä alueilla voi olla oma joukko:
 1. Mallit
 2. Näkemykset
 3. Ohjaimet
 4. Reitit

Tässä artikkelissa aiomme kehittää ASP.NET MVC -sovelluksen, joka sisältää löysästi kytkettyjä moduuleja (riippumatta pääsovelluksesta), joita lisäämme edelleen pääsovellukseen.

Tämän lähestymistavan edut

Tämä lähestymistapa on erittäin hyödyllinen tuotekehityksessä. Tätä lähestymistapaa käyttämällä jokainen moduuli voidaan kehittää ja ottaa käyttöön tuotteelle erikseen. Tämä auttaa rakentamaan erilaisia ​​tuoteversioita, kuten perus-, ammatti-, premium- ja yritysversioita. Sen avulla tuotekehittäjät voivat myös luoda tarvittavan eristyksen

ü Rakenna erilliset asentajat, joilla on tarvittavat ominaisuudet jokaiselle eri versiolle

ü Pääasetus, joka voi asentaa vain määritetyt ominaisuudet asennuksen aikana käytetyn lisenssiavaimen mukaan, tai

ü Jokin muu konfiguraatio, joka vaatii modulaarisen erotustekniikan.

Demo modulaariselle sovellukselle

Täällä luomme verkkosovelluksen, joka sisältää seuraavat moduulit:

· Myynti

· Osta

· Huolto

· Markkinointi

· Varastossa

· Tuonti

· Vie

Vaihe 1:

Avaa Visual Studio 2015 ja luo ASP.NET MVC-projekti seuraavasti. Anna sille merkityksellinen nimi (minun tapauksessani olen käyttänyt MVCPluggableDemoa).

Kun se on luotu, ratkaisusi pitäisi näyttää tältä:

Vaihe 2:

Napsauta hiiren kakkospainikkeella Ohjaimet-kansiota ja valitse Lisää -> Ohjain. Nimeä se HomeControlleriksi ja valitse mallille ”Tyhjä MVC-ohjain”:

Napsauta hiiren kakkospainikkeella ohjaimen hakemistomenetelmää ja valitse ”Lisää näkymä”. Luo HomeController-hakemistonäkymä oletusarvoja käyttämällä sovelluksen aloitussivun muodostamiseksi:

Vaihe 3:

Muokkaa nyt korostettua osiota _Layout.cshtml-sovelluksessa (Näkymät \ Jaettu-kansio) luodaksesi valikkokohtia, jotka osoittavat haluttuihin moduuleihin:

Vaihe 4:

Suorita sovellus ja saat tulosteen seuraavasti:

Nyt keskitymme luomaan erillisiä moduuleja sovelluksemme ja kytke sitten ne päämoduuliin.

Vaihe 5:

Napsauta hiiren kakkospainikkeella pääsovellusprojektin otsikkoa (kuten tapauksessamme MVCPluggableDemo) Solution Explorerissa ja valitse ”Lisää-> Alue” pikavalikosta. Tämä luo peruskansiorakenteen Area-kehykselle. Määritä ”Sale” alueen nimellä ja napsauta “Add”.

Sitten meillä on kansioratkaisurakenne, joka näyttää seuraavalta:

Vaihe 6:

Varmuuskopio SaleAreaRegistration.cs-tiedostosta. Tätä tiedostoa tarvitaan myöhemmin, kun lisäämme Sale-moduulin ratkaisuun erillisenä projektina.

Poista nyt Sale-alikansiot Alue-kansiosta pitämällä Alue-kansio paikallaan.

Seuraavaksi lisää uusi kytkettävä moduuli ”Myynti” -kohtaan, napsauta hiiren kakkospainikkeella ratkaisua ja valitse ”Lisää-> Uusi projekti”.

· Valitse Tyhjä ASP.NET MVC -sovellus

· Nimi projektille "Sale"

· Aseta sijainti arvoksi “… \ MVCPluggableDemo \ MVCPluggableDemo \ Areas \”

· Uusi projekti tulisi luoda Alue-kansioon (aikaisemmin luotu).

Tämän vaiheen jälkeen ratkaisusi tulisi näyttää seuraavalta:

Kun tallensimme uuden projektimyynnin Alueet-kansioon, se näkyy piilotettuna kansiona Solution Explorer -sovelluksen MVCPluggableDemo / Areas-kansiossa:

Vaihe 7:

Säädä MVCPluggableDemon RouteConfig.cs-tiedosto lisätäksesi oikean nimitilan ylikuormituksen reiteille oikein.MapRoute () -menetelmä:

Käytämme myös toista ylikuormitettua versiota reiteistä.MapRoute () -menetelmä, joka vie ohjaimen nimitilan.

Vaihe 8:

Aseta Sale-projektin lähtöhakemisto arvoon .. \ .. \ bin \ niin, että sen kootut DLL-tiedostot sijoitetaan MVCPluggableDemo-sovelluksen bin-hakemistoon:

Yhteysjonoihin, todennukseen, jäsenyyteen, roolinhallintaan, profiiliin ja istunnon tilaan liittyvät asetukset sijoitetaan juurihakemiston web.config-tiedostoon. Joten poista kaikki nämä osiot myynnin verkkosivustosta.

Vaihe 9:

· Luo Sale-ohjain Sale-projektiin.

· Luo hakemistonäkymä ja sijoita ”Welcome to Sales Module” sisältö sen otsikkoon.

Vaihe 10:

Lisää nyt SaleAreaRegistration.cs-tiedosto (varmuuskopiotiedosto vaiheesta 6) Sale-projektin juurikansioon ja muuta sen nimitilaksi MVCPluggableDemo; Käytä kontekstin ylikuormittua versiota.MapRoute () -menetelmä, joka hyväksyy ohjaimen nimitilan käytettäväksi seuraavasti:

Vaihe 11:

Nyt rakenna ratkaisu ja tarkista MVCPluggableDemo \ bin -kansio ja sinulla on kootut DLL-tiedostot Sale-moduulille siellä:

Vaihe 12:

Suorita nyt sovellus! Jos olet noudattanut kaikkia vaiheita oikein, se toimii odotetusti.

Voit seurata samoja vaiheita ja luoda muita suurempia moduuleja erikseen ja kytkeä ne sovellukseen. Eikö se ole yksinkertainen, mutta niin tehokas ominaisuus tuotekehityksessä?

Lähetä kommentit, epäilyt ja kyselyt alla. Demosovellus on myös ladattavissa täältä. Hyvää koodausta!