Kommentarer
- Vad betyder v / s i titeln på denna fråga? Från sammanhang verkar det betyda kontra , vilket vanligtvis förkortas mot Jag ' har aldrig sett förkortningen v / s innan. Är den vanliga användningen någonstans, eller gjorde du det? Eller står det för något helt annat?
- Du borde verkligen ändra titeln på denna fråga. ASP.NET MVC är ASP.NET. Det finns också ASP.NET webbformulär. Det är också ASP.NET. ASP.NET är den övergripande webbstrategin på .NET Framework-plattformen som omfattar både ASP.NET MVC och ASP.NET webbformulär. Detta visas i den senaste versionen av Visual Studio 2013; du kan skapa en ASP.NET-webbapplikation och använda kryssrutor för vilka funktioner du vill ha, ASP.NET MVC eller ASP.NET Web Forms eller ASP.NET Web API eller vad som helst.
Svar
Min personliga åsikt är att ASP.NET MVC är steget framåt.
ASP.NET Web Forms hade några fördelar främst med det faktum att du programmerade som i Windows Forms med en händelsebasmetod. Om du programmerade i Windows Forms, var säker på att du var praktiskt taget hemma. Du skrev också så lite HTML / CSS / Javascript som möjligt. Men du har också flera nackdelar för att även om koden ligger bakom den fortfarande är direkt kopplad till din displaylogik, … och ViewState / PostBack? Nog sagt (Det var nödvändigt men vilken röra …)
Jag kunde skriva en mycket lång jämförelse mellan de två här men jag ger dig den här länken, det drar en mycket mer detaljerad jämförelse än jag kunde ge här är det bra: http://coderjournal.com/2008/12/introducing-aspnet-mvc-part-2-aspnet-mvc-vs-webforms/
Jag lägger bara till att eftersom ASP .NET MVC är frikopplat från displaylogiken, du kan använda olika renderingsmotorer (Razor är bra IMHO), kolla in Wikipedia ”information om detta.
Kommentarer
- Hur förklarar vi viewstate, ledsen att fråga detta, men kan du ge mig ett exempel för att förstå denna term som jag inte ' vet inte mycket om det.
- Microsoft ' s introduktion till " ViewState ": " " Microsoft ® ASP.NET-visningstillstånd, i ett nötskal, är den teknik som används av en ASP.NET-webb sida för att bestå ändringar av tillståndet för ett webbformulär över återbackar " ". Nu, mina egna ord: HTTP är statslös och genom att använda det här dolda fältet " ViewState " skapade Microsoft en illusion för utvecklaren att det är stateful, vilket innebär att data som matas in av användaren sparas över återbackar utan att du oroar dig. Det finns en bra förklaring till hur " ViewState " och hela sidans livscykel i ASP.NET fungerar på msdn.microsoft.com/en-us/library/ms972976.aspx .
- det är en bra länk. Jag upptäckte det för ungefär en timme sedan, men tack för att du listade det här.
Svar
Jag skulle definitivt välj ASP.NET MVC framför ”klassisk” ASP.NET om jag hade möjlighet.
Visst, mycket av det som finns i ASP.NET MVC liknar det du hittar i Ruby on Rails (eller de flesta MVC-webbramar idag) men det är inte en dålig sak – URL-dirigering och separering av styrenheter från vyer är faktiskt ett riktigt trevligt sätt att arbeta, när du förstår det.
Och genom att hålla ramverket i linje med hur WWW faktiskt fungerar, snarare än att försöka klämma in en fyrkantig pinne i ett runt hål och tvinga en ”statlig” modell till ett statslöst protokoll (som ”klassisk ”ASP.NET gjorde), det tappar alla de hemska och läckande abstraktionerna som ASP.NET hade.
Ska du lära dig ASP.NET MVC istället för WPF? Jag vet inte, är det ens en giltig val? Du kan verkligen inte använda WPF på alla platser ASP.NET MVC skulle fungera (och tvärtom) så jag tror inte att du borde lära dig en ”istället för” den andra …
Kommentarer
- jag pratade mellan asp.net och asp.net mvc. WPF nämndes i sammanhang med Windows-form.
Svar
ASP.NET MVC gör det lättare att hantera komplexitet genom att dela en applikation i modellen, vyn och styrenheten.
ASP.NET MVC använder inte visningstillstånd eller serverbaserade formulär.Detta gör MVC-ramverket idealiskt för utvecklare som vill ha full kontroll över beteendet hos en applikation.
ASP.NET MVC använder ett Front Controller-mönster som behandlar webbapplikationsförfrågningar via en enda controller. Detta gör att du kan utforma en applikation som stöder en rik ruttinfrastruktur.
ASP.NET MVC ger bättre stöd för testdriven utveckling (TDD).
ASP.NET MVC fungerar bra för webbapplikationer som stöds av stora team av utvecklare och för webbdesigners som behöver en hög grad av kontroll över applikationsbeteendet.