Stáhnout PDF
1) Vysvětlete, co je Model-View-Controller?
MVC je vzor softwarové architektury pro vývoj webových aplikací. Zpracovávají ho tři objekty Model-View-Controller.
2) Uveďte, co představuje Model-View-Controller v aplikaci MVC?
V modelu MVC
- Model - Představuje doménu dat aplikace. Jinými slovy, obchodní logika aplikací je obsažena v modelu a je odpovědná za údržbu dat
- Pohled - Představuje uživatelské rozhraní, se kterým koncoví uživatelé komunikují. Stručně řečeno, veškerá logika uživatelského rozhraní je obsažena v ZOBRAZENÍ
- Řadič - Je to řadič, který odpovídá na akce uživatele. Na základě akcí uživatele odpovídá příslušný řadič v rámci modelu a vybere zobrazení k vykreslení, které zobrazuje uživatelské rozhraní. Logika vstupu uživatele je obsažena v řídicí jednotce
3) Vysvětlete, ve kterém sestavení je definován rámec MVC?
Rámec MVC je definován v System.Web.Mvc.
4) Vypsat několik různých návratových typů metody akce řadiče?
- Zobrazit výsledek
- Výsledek Javascript
- Výsledek přesměrování
- Výsledek JSON
- Výsledek obsahu
5) Uveďte, jaký je rozdíl mezi přidáním tras do aplikace webového formuláře a aplikace MVC?
K přidání tras do aplikace webového formuláře můžeme použít metodu MapPageRoute () třídy RouteCollection, kde při přidávání tras do aplikace MVC můžete použít metodu MapRoute ().
6) Uveďte, jaké jsou dva způsoby, jak přidat omezení na trasu?
Dvě metody přidání omezení na trasu jsou
- Používejte regulární výrazy
- Použijte objekt, který implementuje rozhraní IRouteConstraint
7) Uveďte, jaké jsou výhody MVC?
- MVC odděluje váš projekt do jiného segmentu a vývojářům se snadno pracuje
- Je snadné upravit nebo změnit některou část projektu, díky níž je projekt méně nákladů na vývoj a údržbu
- Díky MVC je váš projekt systematičtější
8) Uveďte, co v ovladači dělají funkce „beforFilter ()“, „beforeRender“ a „afterFilter“?
- beforeFilter (): Tato funkce je spuštěna před každou akcí v ovladači. Je to správné místo ke kontrole aktivní relace nebo ke kontrole oprávnění uživatele.
- beforeRender (): Tato funkce se volá po logice akce řadiče, ale před vykreslením pohledu. Tato funkce se často nepoužívá, ale může být vyžadována, pokud voláte render () ručně před koncem dané akce
- afterFilter (): Tato funkce je volána po každé akci řadiče a po dokončení vykreslení. Je to poslední spuštěná metoda řadiče
9) Vysvětlete roli komponent Prezentace, Abstrakce a Kontrola v MVC?
- Prezentace: Jde o vizuální znázornění konkrétní abstrakce v rámci aplikace
- Abstrakce: Jedná se o funkcionalitu obchodní domény v rámci aplikace
- Ovládací prvek : Je to komponenta, která kromě komunikace s dalšími ovládacími prvky v systému udržuje konzistenci mezi abstrakcí v systému a jejich prezentací uživateli.
10) Uveďte výhody a nevýhody modelu MVC?
Výhody |
Nevýhody |
|
|
11) Vysvětlete roli „ActionFilters“ v MVC?
V MVC vám „ActionFilters“ pomáhají provádět logiku při provádění akce MVC nebo při jejím provádění.
12) Vysvětlete, jaké jsou kroky pro provedení projektu MVC?
Kroky pro provedení projektu MVC zahrnují
- Obdržíte první žádost o aplikaci
- Provádí směrování
- Vytvoří obslužnou rutinu požadavku MVC
- Vytvořit řadič
- Spusťte ovladač
- Vyvolat akci
- Provést výsledek
13) Vysvětlete, co je směrování? Jaké jsou tři segmenty pro směrování je důležité?
Směrování vám pomůže rozhodnout se o struktuře URL a mapovat adresu URL pomocí ovladače.
Tři segmenty, které jsou důležité pro směrování, jsou
- ControllerName
- ActionMethodName
- Parametr
14) Vysvětlete, jak se směrování provádí ve vzoru MVC?
Existuje skupina tras nazvaná RouteCollection, která se skládá z registrovaných tras v aplikaci. Metoda RegisterRoutes zaznamenává trasy v této kolekci. Trasa definuje vzor adresy URL a obslužnou rutinu, která se má použít, pokud se požadavek shoduje se vzorem. Prvním parametrem metody MapRoute je název trasy. Druhým parametrem bude vzor, se kterým se URL shoduje. Třetím parametrem mohou být výchozí hodnoty pro zástupné symboly, pokud nejsou určeny.
15) Vysvětlete pomocí hypertextového odkazu, jak můžete procházet z jednoho pohledu do druhého?
Použitím metody „ActionLink“, jak je uvedeno v níže uvedeném kódu. Níže uvedený kód vytvoří jednoduchou adresu URL, která pomůže přejít na ovladač „Domů“ a vyvolat akci „GotoHome“.
Sbalte / zkopírujte kód
<% = Html.ActionLink ("Domů", "Gotohome")%>
16) Uveďte, jak může udržovat relaci v MVC?
Relace může být udržována v MVC třemi způsoby tempdata, viewdata a viewbag.
17) Uveďte, jaký je rozdíl mezi Temp data, View a View Bag?
- Dočasná data: Pomáhá udržovat data při přechodu z jednoho řadiče na druhý.
- Zobrazit data: Pomáhá udržovat data při přechodu z řadiče do zobrazení
- View Bag: Je to dynamický obal kolem zobrazených dat
18) Co je částečné zobrazení v MVC?
Částečné zobrazení v MVC vykreslí část obsahu zobrazení. To je užitečné při snižování duplikace kódu. Jednoduše řečeno, částečný pohled umožňuje vykreslit pohled v nadřazeném pohledu.
19) Vysvětlete, jak můžete implementovat Ajax v MVC?
V MVC lze Ajax implementovat dvěma způsoby
- Ajax knihovny
- Jquery
20) Uveďte, jaký je rozdíl mezi „ActionResult“ a „ViewResult“?
„ActionResult“ je abstraktní třída, zatímco „ViewResult“ je odvozena z třídy „AbstractResult“. „ActionResult“ má řadu odvozených tříd jako „JsonResult“, „FileStreamResult“ a „ViewResult“.
„ActionResult“ je nejlepší, pokud dynamicky odvozujete různé typy zobrazení.
21) Vysvětlete, jak můžete výsledek poslat zpět ve formátu JSON v MVC?
Chcete-li výsledek poslat zpět ve formátu JSON v MVC, můžete použít třídu „JSONRESULT“.
22) Vysvětlete, jaký je rozdíl mezi pohledem a částečným pohledem?
Pohled |
Částečný pohled |
|
|
23) Seznam typů výsledků v MVC?
V MVC existuje dvanáct typů výsledků v MVC, kde je třída „ActionResult“ hlavní třídou, zatímco 11 jsou jejich podtypy
- ViewResult
- PartialViewResult
- EmptyResult
- RedirectResult
- RedirectToRouteResult
- JsonResult
- Výsledek JavaScriptu
- ContentResult
- FileContentResult
- FileStreamResult
- FilePathResult
24) Uveďte, jaký je význam NonActionAttribute?
Všechny veřejné metody třídy řadiče jsou považovány za metodu akce, pokud chcete zabránit této výchozí metodě, pak musíte přiřadit veřejnou metodu s NonActionAttribute.
25) Uveďte, jaké je použití výchozí trasy {resource} .axd / {* pathinfo}?
Tato výchozí trasa brání předání požadavku na soubor webových prostředků, jako je Webresource.axd nebo ScriptResource.axd, do řadiče.
26) Uveďte pořadí filtrů, které se provedou, pokud je implementováno více filtrů?
Pořadí filtrů by vypadalo
- Autorizační filtry
- Akční filtry
- Filtry odezvy
- Filtry výjimek
27) Uveďte, jaké filtry se nakonec provedou?
Na konci jsou provedeny "Filtry výjimek".
28) Uveďte, jaké jsou přípony souborů pro zobrazení holicího strojku?
Pro zobrazení holicího strojku jsou přípony souborů
- .cshtml: Pokud je C # programovací jazyk
- .vbhtml: Pokud je programovacím jazykem VB
29) Uveďte, jaké jsou dva způsoby přidání omezení na trasu?
Dvě metody pro přidání omezení do trasy jsou
- Používání regulárních výrazů
- Pomocí objektu, který implementuje rozhraní IRouteConstraint
30) Uveďte dva případy, kdy není směrování implementováno nebo požadováno?
Dvě instance, kde směrování není vyžadováno, jsou
- Když je nalezen fyzický soubor, který odpovídá vzoru adresy URL
- Když je směrování pro vzor adresy URL zakázáno
31) Uveďte, jaké jsou hlavní výhody používání MVC?
Existují dvě klíčové výhody používání MVC
- Protože je kód přesunut za samostatný soubor třídy, můžete jej do značné míry použít
- Jak za kód je jednoduše přesunut do třídy .NET, je možné automatizovat testování uživatelského rozhraní. To dává příležitost automatizovat ruční testování a zapisovat testy jednotek.