asp.net-mvc
MVC vs webbformulär
Sök…
Introduktion
Innan du hoppar in i ASP. NET MVC för att utveckla din webbapplikation bör du ta hänsyn till fördelarna och avlägsnandet av ramverket och du bör veta att det finns en annan webbram som skapas och underhålls av Microsoft som är ASP. NET Web Forms.
Vilken bör du välja är en fråga om kunskap om båda teknologierna.
Syntax
ASPX View Engine använder "<% =%>" eller "<%:%>" för att återge innehåll på serversidan.
Razor View Engine använder @ för att återge innehåll på serversidan.
Anmärkningar
Fördelar med ASP. NET-webbformulär
Förbered byggkontroller för att hantera rutnät, ingångar, grafer, träd och så vidare.
Det stöder en händelsemodell som bevarar status över HTTP, vilket gynnar utveckling av webbapplikationer. Den webbformulärbaserade applikationen innehåller dussintals händelser som stöds i hundratals serverkontroller.
Den använder ett sidkontrollmönster som lägger till funktionalitet på enskilda sidor. Mer information finns i Sidkontroller på MSDN-webbplatsen.
Den använder visningsläge eller serverbaserade formulär, vilket kan underlätta hantering av tillståndsinformation.
Det fungerar bra för små team av webbutvecklare och designers som vill dra fördel av det stora antalet komponenter som är tillgängliga för snabb applikationsutveckling.
I allmänhet är det mindre komplicerat för applikationsutveckling, eftersom komponenterna (Sidklassen, kontrollerna osv.) Är tätt integrerade och vanligtvis kräver mindre kod än MVC-modellen.
Enkel utvecklingsmodell för de utvecklare som kommer från WindowsForm-utvecklingen.
Fördelar med en MVC-baserad webbapplikation
Det gör det lättare att hantera komplexiteten genom att dela in en applikation i modellen, vyn och styrenheten (Separation av problem).
Den använder inte visningsläge eller serverbaserade formulär. Detta gör MVC-ramverket perfekt för utvecklare som vill ha full kontroll över beteendet hos en applikation.
Den använder ett Front Controller-mönster som bearbetar webbapplikationsbegäranden via en enda controller. Detta gör att du kan designa en applikation som stöder en rik routinginfrastruktur. Mer information finns i Front Controller på MSDN: s webbplats.
Det ger bättre stöd för testdriven utveckling (TDD).
Det fungerar bra för webbapplikationer som stöds av stora team av utvecklare och webbdesigners som behöver en hög grad av kontroll över applikationsbeteendet.
nackdelar
Webblankett:
- Komplex sidlivscykel, varje gång en begäran görs till servern finns det minst fem metoder att utföra tidigare till händelseshanteraren.
- Kraftigt att arbeta med Client-Side-ramverk som JQuery eller Angular.
- Svårt att arbeta med Asyncronous Javascript och XML (AJAX)
- Visningshantering
- Sidans klientsida och koden bakom är tätt kopplade.
MVC:
- Det tar mer tid att utvecklas i jämförelse med webbformulär.
- Data skickas i tydligt textformat till servern medan i webbformulärsvy tillståndsdata är krypterade som standard.
Razor View Engine VS ASPX View Engine
Razor (MVC) | ASPX (webbformulär) |
---|---|
Namnområdet som används av Razor View Engine är System.Web.Razor | Namnområdet som används av ASPX View Engine är System.Web.Mvc.WebFormViewEngine |
De filändelser som används av Razor View Engine skiljer sig från en webbformulärmotor. Den använder cshtml med C # och vbhtml med vb för vyer, partiell vy, mallar och layoutsidor. | De filändelser som används av Web Form View Engines är som ASP.Net webbformulär. Den använder ASPX-tillägget för att visa aspc-förlängningen för partiella vyer eller användarkontroller eller mallar och huvudändelser för layout / mastersidor. |
Razor Engine stöder Test Driven Development (TDD). | Webformat-visningsmotor stöder inte Test Driven Development (TDD) eftersom det beror på klassen System.Web.UI.Page för att göra testningen komplex. |
ASPX View Engine VS Razor View Engine