2009-03-19 18 views
3

Ich habe eine sehr einfache Frage über MVC.ASP.NET MVC vs Webforms

Was ist es wirklich und warum sollte ich es bemerken. Ich weiß, es ist kein Ersatz für asp.net, aber was ist es in ASP.NET, die ich nicht tun kann und daher MVC benötigen.

Ich weiß, google.com ist der beste Weg, um Antworten zu finden, aber ich dachte, wenn jemand hier drüben, der das wirklich gut kann mir erklären kann, wäre ich sehr verpflichtet.

+0

Dies ist eine sehr schlechte Frage Naming –

Antwort

4

Ich fange damit an zu sagen, dass es ein weit verbreitetes Missverständnis ist, dass MVC Webforms ersetzen soll, wie Sie es vorgeschlagen haben. ASP.NET MVC ist nur die ASP.NET-Implementierung von MVC pattern. Ich würde empfehlen, dass Sie this post und this post auschecken. Wie du schon erwähnt hast, kannst du Google nicht nur hier suchen, sondern auch hier.

Sie können überprüfen, ScottGu's entry explaining it (veröffentlicht im Jahr 2007).
Auch die PM von ASP.NET MVC Phil Haack hat Informationen in his blogs on MVC

+0

ausgezeichnet! Danke für die Links –

4

ASP.NET MVC verwendet ein anderes Design-Muster als Webformulare. MVC zielt darauf ab, die verschiedenen Anliegen in verschiedene Schichten zu trennen.

ASP.NET MVC hat einige nette Sachen out of the box für Sie, wie Gerüstbau (im Grunde geben Sie ihm eine Datenquelle und es erzeugt ein einfaches Formular für Sie) und URL-Umschreiben. Sie können dies natürlich mit Webforms tun, aber MVC macht das für Sie aus der Box, was nett ist.

In ASP.NET MVC gibt Ihnen mehr Kontrolle über das Markup (oder zumindest leichter gibt Ihnen die Kontrolle über das Markup). Für viele Menschen ist das ein wirklich nettes Geschenk. Das heißt, Sie verlieren auch einige der Dinge, die ASP.NET-Webforms erleichtern, wie ViewState.

Ich möchte auch hinzufügen, dass Sie Webforms und MVC mischen und anpassen können, so ist es nicht eine "alles oder nichts" -Situation.

Hoffnung, die geholfen hat.

+0

WOW! Das war eine sehr gute Erklärung! –

1

Eine Sache, die ich zu früheren Antworten hinzufügen möchte, ist, dass, wenn Sie MVC überhaupt nicht annehmen möchten, Sie das MVP-Muster verwenden können, um Probleme mit WebForms zu trennen.

Hier ist ein schöner Artikel von Phil Haack.

http://haacked.com/archive/2006/08/09/ASP.NETSupervisingControllerModelViewPresenterFromSchematicToUnitTestsToCode.aspx

Die gute Sache über das MVP-Muster ist, dass Sie in einer Art und Weise arbeiten können, dass Sie die Präsentationslogik von ASP.NET zu Silverlight, WinForms oder sogar WPF wechseln.

2

Es dauert ein einfaches Testprojekt mit MVC, um Vor- und Nachteile zu verstehen. Das Lesen von Blogs und Artikeln, obwohl nützlich, bringt Ihnen jedoch nicht viel Einblick. Schaut es euch einfach an, macht eure eigenen Erfahrungen.