Výukový program ASP.NET MVC pro začátečníky: Co je, Architecture

Co je ASP.NET MVC?

ASP.NET MVC je open source webový vývojový rámec od Microsoft který poskytuje architekturu Model View Controller. ASP.net MVC nabízí alternativu k webovým formulářům ASP.net pro vytváření webových aplikací. Je součástí platformy .Net pro vytváření, nasazování a provozování webových aplikací. Můžete vyvíjet webové aplikace a webové stránky pomocí HTML, CSS, jQuery, Javascript, Etc.

Naučte se MVC s tímto výukovým programem ASP.NET MVC, který pokrývá všechny základní koncepty MVC pro začátečníky:

Proč ASP.net MVC?

Přestože webové formuláře byly velmi úspěšné, Microsoft myslel na vývoj ASP.net MVC. Hlavním problémem webových formulářů ASP.net je výkon.

V webové aplikace, existují čtyři hlavní aspekty, které definují výkon:-

  • Problémy s dobou odezvy
  • Problém testování jednotek
  • HTML přizpůsobení
  • Znovupoužitelnost třídy code-behind

ASP.net MVC exceluje ve výše uvedených parametrech.

Historie verzí MVC

ASP.NET MVC1

  • Vydáno 13. března 2009
  • Běží na.NET 3.5
  • Visual Studio 2008
  • Architektura vzorů MVC s WebForm Engine
  • Mezi hlavní funkce patří Html a Testování jednotek, Pomocníci Ajaxu, Směrování atd.

ASP.NET MVC2

  • Tato verze byla vydána 10. března 2010
  • Běží na .NET 3.5,4.0, XNUMX a s Microsoft Visual Studio 2008
  • Zahrnout funkce jako šablonoví pomocníci, pomocníci Ul s automatickým lešením a přizpůsobitelnými šablonami
  • Podporuje DataAnnotations Attributes pro použití ověření modelu na straně klienta a serveru

ASP.NET MVC3

  • Vyšlo 13. ledna 2011
  • Běží na .NET 4.0, XNUMX a s Microsoft Visual Studio 2010
  • Použití NuGet dodávat software a umožňuje vám spravovat závislosti napříč platformou
  • Lepší JavaPodpora skriptů s ověřením jQuery a vazbou JSON
  • Nabízí funkce jako Razor view engine; vylepšené atributy Anotace dat pro ověřování modelu na straně klienta i serveru

ASP.NET MVC4

  • Tato verze byla vydána v srpnu 2012
  • Běží na .NET 4.0, 4.5 a s Visual Studio 2010 a Visual Studio 2012
  • Vylepšení výchozích šablon projektů
  • Nabízí funkce, jako je šablona mobilního projektu pomocí jQuery Mobile, podpora úloh pro asynchronní řadiče, sdružování, minifikace atd.

ASP.NET MVC5

  • Vyšlo 17. října 2013
  • Běží na .NET 4.5, 4.5.1 a s Visual Studio 2012 a Visual OneASP.NET
  • Podporuje směrování atributů v MVC

Vlastnosti MVC

  • Snadná testovatelnost bez tření
  • Plná kontrola nad vaším HTML, JavaSkript a adresy URL
  • Pákový efekt existující ASP.Net Funkce
  • Nová možnost prezentace pro ASP.Net
  • Jednodušší způsob programování Asp.Net
  • Jasné oddělení logiky: Model, View, Controller
  • Testem řízený vývoj
  • Podpora paralelního vývoje

Na co si pamatovat při vytváření aplikace MVC

Zde je několik užitečných věcí v tomto tutoriálu ASP.NET MVC, které si musíte zapamatovat při vytváření aplikace MVC:

  • Musíte si pamatovat, že ASP .net MVC NENÍ náhradou aplikací založených na webových formulářích ASP.Net
  • Přístup k vývoji aplikací MVC se musí rozhodnout na základě požadavků na aplikace a funkcí poskytovaných ASP .net MVC, aby vyhovoval specifickým vývojovým potřebám.
  • Proces vývoje aplikací s ASP .NET MVC je složitější ve srovnání s aplikacemi založenými na webových formulářích.
  • Udržitelnost aplikací je vždy vyšší s oddělením aplikačních úloh.
Architektonický vzor MVC
Architektonický vzor MVC

MVC je vzor softwarové architektury, který sleduje metodu oddělení zájmů. V tomto modelu jsou .Net aplikace rozděleny do tří vzájemně propojených částí, které se nazývají Model, View a Controller.

Cílem vzoru MVC je, aby každá z těchto částí mohla být vyvinuta, testována v relativní izolaci a také kombinována za účelem vytvoření velmi robustní aplikace.

Podívejme se na všechny podrobně:

modely

Objekty modelu jsou části aplikace, které implementují logiku aplikace datová doména. Načítá a ukládá stav modelu do databáze. Objekt produktu může například získat informace z a databáze, operujte na něm. Poté zapište informace zpět do tabulky produktů na serveru SQL.

Zobrazení

Pohledy jsou komponenty, které se používají k zobrazení uživatelského rozhraní aplikace (UI), které se v MVC také nazývá viewmodel. Zobrazuje aplikaci .Net MVC, která je vytvořena z dat modelu.

Běžným příkladem by bylo zobrazení pro úpravy tabulky položek. Zobrazuje textová pole, vyskakovací okna a zaškrtávací políčka podle aktuálního stavu produktů a objektů.

kontrolor

Ovladače zpracovávají interakci uživatele, pracují s modelem a vybírají pohled k vykreslení, který zobrazuje Ul. V aplikaci .Net MVC zobrazení zobrazuje pouze informace, kontrolér spravuje a reaguje na vstup a interakci uživatele pomocí filtrů akcí v MVC.

Řadič například spravuje hodnoty řetězce dotazů a předává tyto hodnoty modelu.

Webové formuláře vs. MVC

parametry WebFroms MVC
Model Webové formuláře Asp.Net se řídí vývojovým modelem řízeným událostmi. Asp.Net MVC používá model vývoje založený na vzoru MVC.
Používaný od Existuje od roku 2002 Poprvé byla vydána v roce 2009
Podpora pro zobrazení stavu Webový formulář Asp.Net podporuje stav zobrazení pro správu stavu na straně klienta. .Net MVC nepodporuje stav zobrazení.
typ adresy URL Webový formulář Asp.Net má adresy URL založené na souborech. To znamená, že název souboru existuje v URL a musí existovat fyzicky. Asp.Net MVC má adresy URL založené na směrování, což znamená adresy URL, které jsou přesměrovány na ovladače a akce.
Syntax Asp.Net MVC se řídí syntaxí webových formulářů. Asp.Net MVC se řídí přizpůsobitelnou syntaxí.
Typ zobrazení Webový formulář, pohledy jsou pevně spojeny s Code behind (ASPX-CS), tj. s logikou. MVC, pohledy a logika jsou vždy uchovávány odděleně.
Konzistentní vzhled a dojem Má vzorové stránky pro konzistentní vzhled. Asp.Net MVC má rozložení pro konzistentní vzhled.
Znovupoužitelnost kódu Webový formulář nabízí uživatelské ovládací prvky pro opětovné použití kódu. Asp.Net MVC nabídl částečné pohledy pro opětovné použití kódu.
Ovládání pro HTML Less kontrolu nad vykresleným HTML. Plná kontrola nad HTML
Řízení státu Automatické řízení stavu ovládacích prvků. Manuální správa stavu.
podpora TDD Je vyžadováno slabé nebo vlastní TDD. Povzbuzuje a zahrnuje TDD!

Výhody ASP.NET MVC

  • Ve výchozím nastavení vysoce udržovatelné aplikace
  • Umožňuje vám nahradit jakoukoli součást aplikace.
  • Lepší podpora pro vývoj řízený testem
  • Složité aplikace se snadno spravují díky rozdělení Model, View a Controllers.
  • Nabízí robustní směrovací mechanismus s předním vzorem ovladače
  • Nabízí lepší kontrolu nad chováním aplikace s eliminací stavu zobrazení a serverových formulářů
  • Aplikace .Net MVC jsou podporovány velkými týmy vývojářů a webových designérů
  • Nabízí větší kontrolu nad chováním aplikace. Používá také optimalizovanou šířku pásma pro požadavky na server

Nevýhody ASP.NET MVC

  • Nemůžete vidět náhled stránky návrhu jako stránka .aspx.
  • Abyste viděli jeho skutečný design, musíte program pokaždé spustit.
  • Pochopení toku aplikace může být náročné
  • Jeho implementace je poměrně komplikovaná, takže není ideální volbou pro aplikace na malé úrovni
  • Je těžké se naučit MVC pro ASP.NET, protože to vyžaduje velké porozumění vzoru MVC

Doporučené postupy při používání ASP.Net MVC

  • V případě velkého a složitého kódu vytvořte samostatnou sestavu pro MODEL, abyste se vyhnuli jakékoli nežádoucí situaci o
  • Model by měl zahrnovat obchodní logiku, údržbu relace, validační část a datovou logiku.
  • VIEW by nemělo obsahovat žádnou obchodní logiku a údržbu relací, pro přístup k datům v View použijte ViewData
  • Obchodní logika a přístup k datům by se nikdy neměl vyskytovat v ControllerViewData
  • Správce by měl být odpovědný pouze za přípravu a vrácení pohledu, volání modelu, přesměrování na akci atd.
  • Odstraňte ukázkový kód z aplikace při jejím vytváření Delete AccountController
  • K vytvoření značek HTML z vašeho zobrazení používejte pouze konkrétní zobrazovací modul, protože se jedná o kombinaci HTML a programovacího kódu.

Shrnutí

  • ASP.NET MVC je open source webový vývojový framework od Microsoft to poskytuje Architektura řadiče zobrazení modelu.
  • ASP.net MVC nabízí alternativu k webovým formulářům ASP.net pro vytváření webových aplikací.
  • Hlavním problémem webových formulářů ASP.net je výkon.
  • ASP.net MVC nabízí snadnou a bezproblémovou testovatelnost s plnou kontrolou nad vaším HTML a URL.
  • Musíte si pamatovat, že ASP .net MVC NENÍ náhradou aplikací založených na webových formulářích ASP.Net.
  • Přístup vývoje aplikací MVC nebo životního cyklu ASP.NET MVC se musí rozhodnout na základě požadavků na aplikace a funkcí poskytovaných ASP .net MVC tak, aby vyhovovaly konkrétním vývojovým potřebám.
  • ASP.NET MVC nabízí ve výchozím nastavení vysoce udržovatelné aplikace.
  • S ASP.net nevidíte náhled stránky návrhu jako stránka .aspx.
  • Podle osvědčeného postupu by model měl zahrnovat obchodní logiku, údržbu relace, ověřovací část a datovou logiku.