Reacties
- Wat betekent v / s in de titel van deze vraag? Vanuit de context lijkt het versus te betekenen, wat meestal wordt afgekort versus Ik ' ik heb de afkorting nog nooit gezien v / s ervoor. Is dat standaardgebruik ergens, of heb je het verzonnen? Of staat het voor iets heel anders?
- Je zou echt de titel van deze vraag moeten veranderen. ASP.NET MVC is ASP.NET. Er zijn ook ASP.NET-webformulieren. Dat is ook ASP.NET. ASP.NET is de algemene webstrategie op het .NET Framework-platform dat zowel ASP.NET MVC als ASP.NET Web Forms omvat. Dit wordt gedemonstreerd in de nieuwste versie van Visual Studio 2013; u kunt een ASP.NET-webtoepassing maken en selectievakjes gebruiken voor welke functies u wilt, ASP.NET MVC of ASP.NET Web Forms of ASP.NET Web API of wat dan ook.
Antwoord
Mijn persoonlijke mening is dat ASP.NET MVC de stap vooruit is.
ASP.NET-webformulieren hadden enkele voordelen, voornamelijk door het feit dat u programmeerde zoals in Windows Forms met een op gebeurtenissen gebaseerde benadering. Als je in Windows Forms hebt geprogrammeerd, was je zeker praktisch thuis. Je schreef ook zo min mogelijk HTML / CSS / Javascript. Je hebt echter ook verschillende nadelen, want zelfs als de code erachter zit, is deze nog steeds direct gekoppeld aan je weergavelogica, … en ViewState / PostBack? Genoeg gezegd (het was nodig, maar wat een puinhoop …)
Ik zou hier een heel lange vergelijking tussen de twee kunnen schrijven, maar ik geef je deze link, het geeft een veel gedetailleerdere vergelijking dan ik zou kunnen geven hier is het geweldig: http://coderjournal.com/2008/12/introducing-aspnet-mvc-part-2-aspnet-mvc-vs-webforms/
Ik zal dat gewoon toevoegen sinds ASP .NET MVC is losgekoppeld van de weergavelogica, je kunt verschillende rendering-engines gebruiken (Razor is geweldig IMHO), bekijk Wikipedia “s informatie hierover.
Reacties
- Hoe verklaren we viewstate, sorry dat ik dit vraag, maar kun je me een voorbeeld geven om deze term te begrijpen, aangezien ik niet ' weet er niet veel van.
- Microsoft ' s inleiding tot de " ViewState ": " " Microsoft ® ASP.NET view state, in een notendop, is de techniek die wordt gebruikt door een ASP.NET Web pagina om wijzigingen in de staat van een webformulier in postbacks vast te houden " ". Nu, mijn eigen woorden: HTTP is stateless en door dit verborgen " ViewState " veld te gebruiken, creëerde Microsoft de illusie voor de ontwikkelaar dat het is stateful, wat betekent dat gegevens die door de gebruiker zijn ingevoerd, zonder dat u zich zorgen hoeft te maken over postbacks worden bewaard. Er is een mooie uitleg over hoe " ViewState " en de hele paginalevenscyclus in ASP.NET werkt op msdn.microsoft.com/en-us/library/ms972976.aspx .
- dat is een geweldige link. Ik vond dat ongeveer een uur geleden, maar bedankt dat je het hier vermeldt.
Antwoord
Ik zou het zeker doen kies ASP.NET MVC boven “klassiek” ASP.NET als ik de kans had.
Zeker, veel van wat in ASP.NET MVC is, is vergelijkbaar met wat je zult vinden in Ruby on Rails (of de meeste MVC-webframeworks tegenwoordig) maar dat is geen slechte zaak – de URL-routering en scheiding van controllers en views is eigenlijk een heel leuke manier om te werken, als je het eenmaal onder de knie hebt.
En door het raamwerk in overeenstemming te houden met hoe het WWW feitelijk werkt, in plaats van te proberen een vierkante pin in een rond gat te proppen en een stateful model te dwingen tot een stateless protocol (zoals klassiek “ASP.NET deed), het laat alle vreselijke en lekkende abstracties vallen die ASP.NET had.
Moet je ASP.NET MVC leren in plaats van WPF? Ik weet het niet, is dat zelfs een geldige keuze? Je kunt zeker “WPF niet overal gebruiken waar ASP.NET MVC zou werken (en vice versa), dus ik denk niet dat je de ene moet leren in plaats van” de andere …
Opmerkingen
- ik was aan het praten tussen de asp.net en asp.net mvc. WPF werd genoemd in context met Windows-formulier.
Answer
ASP.NET MVC maakt het gemakkelijker om complexiteit te beheren door een applicatie op te splitsen in het model, de weergave en de controller.
ASP.NET MVC gebruikt geen weergavestatus- of servergebaseerde formulieren.Dit maakt het MVC-framework ideaal voor ontwikkelaars die volledige controle willen over het gedrag van een applicatie.
ASP.NET MVC gebruikt een Front Controller-patroon dat webapplicatieverzoeken verwerkt via een enkele controller. Dit stelt u in staat een applicatie te ontwerpen die een rijke routeringsinfrastructuur ondersteunt.
ASP.NET MVC biedt betere ondersteuning voor testgestuurde ontwikkeling (TDD).
ASP.NET MVC werkt goed voor webtoepassingen die worden ondersteund door grote teams van ontwikkelaars en voor webontwerpers die een hoge mate van controle over het toepassingsgedrag nodig hebben.