Top 31 pitanje za intervju s MVC-om & Odgovori

Anonim

Preuzmite PDF

1) Objasnite što je Model-View-Controller?

MVC je obrazac softverske arhitekture za razvoj web aplikacija. Njime se bave tri objekta Model-View-Controller.

2) Spomenite što Model-View-Controller predstavlja u MVC aplikaciji?

U MVC modelu,

  • Model - predstavlja domenu podataka aplikacije. Drugim riječima, poslovna logika aplikacija sadržana je u modelu i odgovorna je za održavanje podataka
  • Pogled - predstavlja korisničko sučelje s kojim krajnji korisnici komuniciraju. Ukratko, sva logika korisničkog sučelja sadržana je u POGLEDU
  • Upravljač - Upravljač je taj koji odgovara na radnje korisnika. Na temelju korisničkih radnji, odgovarajući kontroler reagira unutar modela i odabire prikaz za prikaz koji prikazuje korisničko sučelje. Logika korisničkog unosa sadržana je unutar kontrolera

3) Objasnite u kojem je sklopu definiran MVC okvir?

MVC okvir definiran je u System.Web.Mvc.

4) Navedite nekoliko različitih vrsta povratnih metoda radnje kontrolera?

  • Pogledajte rezultat
  • Javascript rezultat
  • Rezultat preusmjeravanja
  • Json Rezultat
  • Rezultat sadržaja

5) Spomenite koja je razlika između dodavanja ruta, aplikaciji web obrasca i aplikaciji MVC?

Da bismo dodali rute u aplikaciju web obrasca, možemo koristiti metodu MapPageRoute () klase RouteCollection, gdje dodavanjem ruta u MVC aplikaciju možete koristiti metodu MapRoute ().

6) Spomenite koja su dva načina za dodavanje ograničenja na rutu?

Dvije metode za dodavanje ograničenja na rutu su

  • Koristite regularne izraze
  • Upotrijebite objekt koji implementira IRouteConstraint Interface

7) Spomenite koje su prednosti MVC-a?

  • MVC odvaja vaš projekt u drugi segment i programerima postaje lako raditi
  • Lako je urediti ili izmijeniti neki dio vašeg projekta što smanjuje troškove razvoja i održavanja
  • MVC čini vaš projekt sustavnijim

8) Spomenite što funkcije "beforFilter ()", "beforeRender" i "afterFilter" rade u Controlleru?

  • beforeFilter (): Ova se funkcija pokreće prije svake radnje u kontroleru. To je pravo mjesto za provjeru aktivne sesije ili pregled korisničkih dozvola.
  • beforeRender (): Ova se funkcija poziva nakon logike akcije kontrolera, ali prije generiranja prikaza. Ova se funkcija često ne koristi, ali može biti potrebna Ako ručno zovete render () prije kraja zadane radnje
  • afterFilter (): Ova se funkcija poziva nakon svake radnje kontrolera i nakon završetka prikazivanja. To je zadnja izvršena metoda kontrolera

9) Objasnite ulogu prezentacije, apstrakcije i kontrole komponenata u MVC-u?

  • Prezentacija: To je vizualni prikaz određene apstrakcije unutar aplikacije
  • Apstrakcija: To je funkcionalnost poslovne domene unutar aplikacije
  • Kontrola: Komponenta je koja održava dosljednost između apstrakcije unutar sustava i njihove prezentacije korisniku, uz komunikaciju s drugim kontrolama unutar sustava

10) Spomenite prednosti i nedostatke MVC modela?

Prednosti

Mane

  • Predstavlja jasnu odvojenost između poslovne i prezentacijske logike
  • Svaki MVC objekt ima različite odgovornosti
  • Razvoj napreduje paralelno
  • Jednostavno upravljanje i održavanje
  • Sve su klase i objekti neovisni jedni o drugima
  • Uzorak modela malo je složen
  • S obzirom na neučinkovitost pristupa podacima
  • S modernim korisničkim sučeljem teško je koristiti MVC
  • Za paralelni razvoj potreban vam je više programera
  • Potrebno je znanje iz više tehnologija

11) Objasnite ulogu "ActionFilters" u MVC-u?

U MVC-u "ActionFilters" pomažu vam u izvršavanju logike dok se MVC radnja izvršava ili izvršava.

12) Objasnite koji su koraci za izvršenje MVC projekta?

Koraci za izvršenje MVC projekta uključuju

  • Primite prvi zahtjev za prijavu
  • Izvodi usmjeravanje
  • Stvara MVC obrađivač zahtjeva
  • Izradite kontroler
  • Izvršiti kontroler
  • Zazovite akciju
  • Izvrši rezultat

13) Objasnite što je usmjeravanje? Koja su tri segmenta za usmjeravanje važna?

Usmjeravanje vam pomaže da odredite strukturu URL-a i mapirate URL s kontrolerom.

Tri segmenta koja su važna za usmjeravanje su

  • ControllerName
  • ActionMethodName
  • Parametar

14) Objasnite kako se usmjeravanje vrši u MVC uzorku?

Postoji grupa ruta nazvana RouteCollection, koja se sastoji od registriranih ruta u aplikaciji. Metoda RegisterRoutes bilježi rute u ovoj zbirci. Ruta definira obrazac URL-a i obrađivač koji će se koristiti ako se zahtjev podudara s uzorkom. Prvi parametar metode MapRoute je naziv rute. Drugi parametar bit će obrazac s kojim se URL podudara. Treći parametar mogu biti zadane vrijednosti rezerviranih mjesta ako nisu određene.

15) Objasnite pomoću hiperveze kako možete prelaziti s jednog pogleda na drugi prikaz?

Korištenjem metode "ActionLink" kako je prikazano u donjem kodu. Kôd u nastavku stvorit će jednostavan URL koji će vam pomoći da dođete do kontrolera "Početna" i pozovete akciju "GotoHome".

Sažmi / kopiraj kod

<% = Html.ActionLink ("Početna", "Gotohome")%>

16) Spomenite kako se može održavati sesija u MVC-u?

Sesija se može održavati u MVC-u na tri načina tempdata, viewdata i viewbag.

17) Spomenite koja je razlika između Temp podataka, View i View Bag?

  • Temp data: Pomaže u održavanju podataka kada prelazite s jednog na drugi kontroler.
  • Pregled podataka: Pomaže u održavanju podataka kada prelazite s kontrolera na prikaz
  • Pregled torbe: To je dinamični omot oko podataka prikaza

18) Što je djelomični prikaz u MVC-u?

Djelomični prikaz u MVC-u daje dio sadržaja prikaza. Korisno je u smanjenju dupliciranja koda. Jednostavno rečeno, djelomični prikaz omogućuje prikaz prikaza u nadređenom prikazu.

19) Objasnite kako možete implementirati Ajax u MVC?

U MVC-u, Ajax se može implementirati na dva načina

  • Ajax knjižnice
  • Jquery

20) Spomenite koja je razlika između "ActionResult" i "ViewResult"?

"ActionResult" je apstraktna klasa, dok je "ViewResult" izveden iz klase "AbstractResult". "ActionResult" ima niz izvedenih klasa poput "JsonResult", "FileStreamResult" i "ViewResult".

"ActionResult" je najbolji ako dinamički izvodite različite vrste pogleda.

21) Objasnite kako možete poslati rezultat natrag u JSON formatu u MVC?

Da biste rezultat poslali natrag u JSON formatu u MVC, možete koristiti klasu "JSONRESULT".

22) Objasnite koja je razlika između pogleda i djelomičnog pogleda?

Pogled

Djelomični pogled

  • Sadrži stranicu izgleda
  • Prije prikaza bilo kojeg prikaza, prikazana je stranica pregleda
  • Pogled može imati oznake kao što su body, html, head, title, meta itd.
  • Pogled nije lagan u usporedbi s djelomičnim prikazom
  • Ne sadrži stranicu izgleda
  • Djelomični pogled ne provjerava za viewstart.cshtml. Ne možemo staviti zajednički kod za djelomični prikaz unutar stranice viewStart.cshtml.page
  • Djelomični prikaz posebno je dizajniran za prikazivanje u prikazu i upravo zbog toga ne sadrži nikakve oznake
  • Možemo proslijediti redoviti prikaz metode RenderPartial

23) Navedite vrste rezultata u MVC-u?

U MVC-u postoji dvanaest vrsta rezultata u MVC-u gdje je klasa "ActionResult" glavna klasa, dok je 11 njihovih podtipova

  • Pregled rezultata
  • PartialViewResult
  • EmptyResult
  • RedirectResult
  • RedirectToRouteResult
  • JsonResult
  • JavaScriptResult
  • ContentResult
  • FileContentResult
  • FileStreamResult
  • FilePathResult

24) Spomenite koja je važnost NonActionAttribute?

Sve javne metode klase kontrolera tretiraju se kao akcijske metode ako želite spriječiti ovu zadanu metodu, tada javnu metodu morate dodijeliti s NonActionAttribute.

25) Spomenite koja je upotreba zadane rute {resource} .axd / {* pathinfo}?

Ova zadana ruta sprječava prosljeđivanje zahtjeva za datotekom web izvora kao što je Webresource.axd ili ScriptResource.axd na kontroler.

26) Spomenite redoslijed filtara koji se izvršavaju ako je implementirano više filtara?

Redoslijed filtra bio bi sličan

  • Filtri za autorizaciju
  • Akcijski filtri
  • Filteri odgovora
  • Filtri za iznimke

27) Spomenite koji se filtri na kraju izvršavaju?

Na kraju se izvršavaju "Filteri izuzetaka".

28) Spomenite koja su proširenja datoteka za britvice?

Za preglede brijača datoteke imaju oznake tipa datoteke

  • .cshtml: Ako je C # programski jezik
  • .vbhtml: Ako je VB programski jezik

29) Spomenite koja su dva načina za dodavanje ograničenja na rutu?

Dvije metode za dodavanje ograničenja ruti su

  • Upotreba regularnih izraza
  • Korištenje objekta koji implementira sučelje IRouteConstraint

30) Spomenite dva slučaja u kojima se usmjeravanje ne provodi ili nije potrebno?

Dvije su instance u kojima usmjeravanje nije potrebno

  • Kada se pronađe fizička datoteka koja se podudara s uzorkom URL-a
  • Kada je usmjeravanje onemogućeno za obrazac URL-a

31) Spomenite koje su glavne prednosti upotrebe MVC-a?

Dvije su ključne prednosti korištenja MVC-a

  • Kako se kôd premješta iza zasebne datoteke klase, kôd možete koristiti u velikoj mjeri
  • Kako se iza koda jednostavno premješta u klasu .NET, moguće je automatizirati testiranje korisničkog sučelja. To daje priliku za automatizaciju ručnog testiranja i pisanje jedinstvenih testova.