A legjobb 31 MVC interjúkérdés & Válaszok

Anonim

PDF letöltése

1) Magyarázza el, hogy mi a Model-View-Controller?

Az MVC egy szoftverarchitektúra mintázat webalkalmazások fejlesztésére. Három objektum kezeli Model-View-Controller.

2) Említse meg, mit képvisel a Model-View-Controller egy MVC alkalmazásban?

MVC modellben

  • Modell - Az alkalmazás adattartományát képviseli. Más szavakkal, az alkalmazások üzleti logikája a modellben található, és felelős az adatok fenntartásáért
  • Nézet - A felhasználói felületet jelenti, amellyel a végfelhasználók kommunikálnak. Röviden: a felhasználói felület összes logikája a VIEW-ban található
  • Vezérlő - A vezérlő válaszol a felhasználói műveletekre. A felhasználói műveletek alapján a megfelelő vezérlő reagál a modellen belül, és kiválaszt egy nézetet a megjelenítéshez, amely megjeleníti a felhasználói felületet. A felhasználói bemeneti logika a vezérlőben található

3) Magyarázza el, hogy melyik összeállításban van meghatározva az MVC keretrendszer?

Az MVC keretrendszert a System.Web.Mvc.

4) Soroljon fel néhány különböző visszatérési típust a vezérlő műveleti módszeréről?

  • Eredmény megtekintése
  • Javascript eredménye
  • Eredmény átirányítása
  • Json eredménye
  • Tartalom eredménye

5) Említse meg, mi a különbség az útvonalak hozzáadása egy webform alkalmazáshoz és egy MVC alkalmazáshoz?

Útvonalak hozzáadásához egy webform alkalmazáshoz használhatjuk a RouteCollection osztály MapPageRoute () metódusát, ahol útvonalak MVC alkalmazáshoz történő hozzáadásához használhatja a MapRoute () metódust.

6) Említse meg, hogyan lehet két módon megkötni az útvonalat?

A korlátozások hozzáadásának két módja az útvonalon az

  • Használjon reguláris kifejezéseket
  • Használjon olyan objektumot, amely megvalósítja az IRouteConstraint felületet

7) Említse meg, milyen előnyei vannak az MVC-nek?

  • Az MVC szétválasztja a projektet egy másik szegmensre, és a fejlesztők számára könnyebbé válik a munka
  • Könnyen szerkeszthető vagy módosítható a projekt olyan része, amely kevesebb fejlesztési és karbantartási költséget jelent
  • Az MVC szisztematikusabbá teszi a projektet

8) Említse meg, hogy a "beforFilter ()", az "beforeRender" és az "afterFilter" függvények mit csinálnak a Vezérlőben?

  • beforeFilter (): Ez a funkció a vezérlő minden művelete előtt fut. Ez a megfelelő hely az aktív munkamenet vagy a felhasználói engedélyek ellenőrzésére.
  • beforeRender (): Ezt a függvényt a vezérlő műveleti logikája után hívják meg, de mielőtt a nézetet megjelenítenék. Ezt a funkciót nem gyakran használják, de szükség lehet rá, ha egy adott művelet vége előtt manuálisan hívja a render () alkalmazást
  • afterFilter (): Ezt a funkciót minden vezérlőművelet után és a renderelés után meghívják. Ez az utolsó futtatott vezérlő módszer

9) Magyarázza el a komponensek bemutatásának, absztrakciójának és kontrolljának szerepét az MVC-ben?

  • Bemutatás: Ez egy konkrét absztrakció vizuális ábrázolása az alkalmazáson belül
  • Absztrakció: Ez az üzleti tartomány funkcionalitása az alkalmazáson belül
  • Vezérlés: Ez egy olyan összetevő, amely konzisztenciát biztosít a rendszeren belüli absztrakció és a felhasználó számára történő bemutatás között, valamint kommunikál a rendszeren belüli többi vezérlővel

10) Megemlíti az MVC modell előnyeit és hátrányait?

Előnyök

Hátrányok

  • Ez egyértelmű elkülönítést jelent az üzleti logika és a prezentációs logika között
  • Minden MVC objektumnak más és más feladatai vannak
  • A fejlesztés párhuzamosan halad
  • Könnyen kezelhető és karbantartható
  • Minden osztály és objektum független egymástól
  • A modellminta kevéssé összetett
  • Az adatelérés hatékonysága a kilátásban
  • A modern felhasználói felületnél nehéz használni az MVC-t
  • A párhuzamos fejlesztéshez több programozóra van szükség
  • Több technológiai ismeretre van szükség

11) Magyarázza el az "ActionFilters" szerepét az MVC-ben?

Az MVC-ben az "ActionFilters" segít a logika végrehajtásában az MVC művelet végrehajtása vagy végrehajtása közben.

12) Magyarázza el, hogy mik az MVC projekt végrehajtásának lépései?

Az MVC projekt végrehajtásának lépései a következőket tartalmazzák:

  • Az alkalmazás iránti első kérelem fogadása
  • Végzi az útválasztást
  • Létrehozza az MVC kéréskezelőt
  • Vezérlő létrehozása
  • Vezérlő végrehajtása
  • Művelet indítása
  • Eredmény végrehajtása

13) Magyarázza el, mi az útválasztás? Mi az a három szegmens, amely fontos az útválasztáshoz?

Az útválasztás segít eldönteni az URL-felépítést és feltérképezni az URL-t a Vezérlővel.

Az útválasztás szempontjából fontos három szegmens az

  • ControllerName
  • ActionMethodName
  • Paraméter

14) Magyarázza el, hogyan történik az útválasztás az MVC mintában?

Van egy RouteCollection nevű útvonalcsoport, amely az alkalmazásban regisztrált útvonalakból áll. A RegisterRoutes módszer rögzíti az útvonalakat ebben a gyűjteményben. Az útvonal meghatározza az URL-mintát és a kezelőt, amelyet használni kell, ha a kérés megegyezik a mintával. A MapRoute metódus első paramétere az útvonal neve. A második paraméter az a minta lesz, amellyel az URL megfelel. A harmadik paraméter lehet a helyőrzők alapértelmezett értéke, ha azokat nem határozzák meg.

15) Magyarázza el a hiperhivatkozás segítségével, hogyan navigálhat egyik nézetről a másikra?

Az "ActionLink" módszer használatával, az alábbi kód szerint. Az alábbi kód egyszerű URL-t készít, amely segít eljutni a "Home" vezérlőhöz és meghívni a "GotoHome" műveletet.

Kód összecsukása / másolása

<% = Html.ActionLink ("Otthon", "Gotohome")%>

16) Említse meg, hogyan lehet fenntartani az MVC munkamenetét?

A munkamenet háromféleképpen tartható fenn az MVC-ben: tempdata, viewdata és viewbag.

17) Mondja meg, mi a különbség a Temp adatok, a Nézet és a Nézet táska között?

  • Hőmérséklet adatok: Segít az adatok fenntartásában, amikor egyik vezérlőről a másikra vált.
  • Adatok megtekintése: Segít az adatok fenntartásában, amikor vezérlőről nézetre lép
  • Nézettáska: Ez egy dinamikus burkoló a nézet adatai körül

18) Mi a részleges nézet az MVC-ben?

Az MVC részleges nézete a nézet tartalmának egy részét rendereli. Hasznos a kódmásolás csökkentésében. Egyszerűen fogalmazva, a részleges nézet lehetővé teszi a nézet megjelenítését a szülő nézetben.

19) Magyarázza el, hogyan tudja megvalósítani az Ajaxot az MVC-ben?

Az MVC-ben az Ajax kétféleképpen valósítható meg

  • Ajax könyvtárak
  • Jquery

20) Említse meg, mi a különbség az „ActionResult” és a „ViewResult” között?

Az "ActionResult" egy absztrakt osztály, míg a "ViewResult" az "AbstractResult" osztályból származik. Az "ActionResult" számos olyan származtatott osztályt tartalmaz, mint a "JsonResult", "FileStreamResult" és "ViewResult".

Az "ActionResult" a legjobb, ha dinamikusan vezet le különböző típusú nézeteket.

21) Magyarázza el, hogyan küldheti vissza az eredményt JSON formátumban MVC-ben?

Az eredmény visszaküldéséhez JSON formátumban MVC-ben használhatja a "JSONRESULT" osztályt.

22) Magyarázza el, mi a különbség a nézet és a részleges nézet között?

Kilátás

Részleges nézet

  • Ez tartalmazza az elrendezési oldalt
  • Bármely nézet megjelenítése előtt megjelenik a viewstart oldal
  • A nézetben lehetnek jelölőcímkék, például törzs, html, fej, cím, meta stb.
  • A nézet nem könnyű, mint a Részleges nézet
  • Nem tartalmazza az elrendezési oldalt
  • A részleges nézet nem ellenőrzi a viewstart.cshtml fájlt. Nem helyezhetünk el közös kódot részleges nézethez a viewStart.cshtml.page-ban
  • A részleges nézetet kifejezetten a nézeten belüli megjelenítésre tervezték, és éppen ezért nem tartalmaz jelölést
  • Rendszeres nézetet adhatunk át a RenderPartial módszerre

23) Sorolja fel az MVC eredménytípusait?

Az MVC-ben tizenkétféle eredmény létezik az MVC-ben, ahol az "ActionResult" osztály a fő osztály, míg a 11 az altípusuk

  • ViewResult
  • PartialViewResult
  • EmptyResult
  • RedirectResult
  • RedirectToRouteResult
  • JsonResult
  • JavaScriptResult
  • ContentResult
  • FileContentResult
  • FileStreamResult
  • FilePathResult

24) Említse meg, mi a jelentősége a NonActionAttribute-nak?

Ha egy vezérlőosztály összes nyilvános módszerét meg akarja akadályozni ezt az alapértelmezett metódust, akkor a public metódust a NonActionAttribute paranccsal kell kezelni.

25) Említse meg, hogy mi az alapértelmezett útvonal: {resource} .axd / {* pathinfo}?

Ez az alapértelmezett útvonal megakadályozza, hogy egy webes erőforrásfájl, például a Webresource.axd vagy a ScriptResource.axd kérést továbbítsanak a vezérlőnek.

26) Megemlíti a végrehajtandó szűrők sorrendjét, ha a több szűrő megvalósul?

A szűrési sorrend hasonló lenne

  • Engedélyezési szűrők
  • Műveleti szűrők
  • Válasz szűrők
  • Kivételszűrők

27) Mondja meg, hogy milyen szűrőket hajtanak végre a végén?

Végül a "kivétel szűrők" végrehajtásra kerülnek.

28) Említse meg, melyek a borotva nézetek fájlkiterjesztései?

Borotva nézeteknél a fájlkiterjesztések a következők

  • .cshtml: Ha a C # a programozási nyelv
  • .vbhtml: Ha a VB a programozási nyelv

29) Mondja meg, hogy két módon lehet korlátozásokat adni az útvonalhoz?

Két módszer a korlátozások hozzáadásához az útvonalhoz

  • Rendszeres kifejezések használata
  • Az IRouteConstraint felületet megvalósító objektum használata

30) Megemlít két olyan esetet, amikor az útválasztás nincs megvalósítva vagy szükséges?

Két olyan eset, ahol az útválasztás nem szükséges

  • Ha olyan fizikai fájlt talál, amely megfelel az URL-mintának
  • Ha az útválasztás le van tiltva egy URL-mintához

31) Említse meg az MVC használatának fő előnyeit?

Az MVC használatának két fő előnye van

  • Mivel a kód külön osztályfájl mögé kerül, a kódot nagy mértékben felhasználhatja
  • Mivel a kód mögött egyszerűen áthelyezik a.NET osztályt, lehetséges a felhasználói felület tesztelésének automatizálása. Ez lehetőséget ad a manuális tesztelés automatizálására és az egység tesztek írására.