Warum sollte ich ASP.NET MVC auf einer öffentlichen Site und WebForms in einem Intranet verwenden?

8

Ich habe diese Frage gestellt:

Ist ASP.NET MVC dafür bestimmt, Webforms zu ersetzen ?

und ein paar Antworten waren, dass wenn die Webseite öffentlich / Internet wäre, um MVC zu verwenden, aber wenn es intern wäre, WebForms zu verwenden. Ich habe einige der Gründe dafür gesehen, aber einige von ihnen haben mir nicht wirklich geholfen, zu verstehen, warum das so ist.

Ich habe auf Kommentare gehofft. Warum sollte ich ASP.NET MVC nicht für alles außer einer kleinen einzelnen Website verwenden? Warum sollte Internet oder Intranet wichtig sein?

Außerdem weiß ich, dass ein Werkzeug nicht alles tut. Ich möchte keine Webformulare verwenden, nicht dass ich denke, dass ich das nicht kann oder dass es irgendwie "schlecht" ist. In dieser Frage frage ich speziell über MVC und warum es für den Standort der Website (öffentlich oder privat) wichtig wäre.

Danke.

    
johnny 22.05.2009, 14:38
quelle

7 Antworten

10

Ich denke, ich habe eine Idee, warum diese interne vs externe Unterscheidung in Ihrer vorherigen Frage aufkam.

MVC für externe Websites verwenden bietet Ihnen die erforderliche Flexibilität, um mehr Browser zu unterstützen, und erleichtert die Entwicklung von Webstandards-kompatiblen Websites. MVC erfordert ein wenig mehr Arbeit, um einige der gleichen Dinge wie Web Forms zu tun, aber Sie haben mehr Kontrolle über die Ausgabe an den Client.

Die Verwendung von WebForms für interne Apps wird empfohlen, da Sie die vollständige Kontrolle darüber haben, welche Browser in Ihrem Netzwerk verwendet werden. Außerdem erhalten interne Apps normalerweise nicht dieselben Budgets wie externe Websites. Mit Web Forms können Sie innerhalb weniger Minuten ein Datenbankraster erstellen, paginieren, sortieren usw., indem Sie Code per Drag & Drop auf eine ASPX-Seite ziehen. Die Motivation, die ich glaube, ist rein Geld und Zeit basiert.

Ich glaube jedoch nicht, dass diese Linie im Sand gut ist. Ich weiß, dass es einige Webseiten gibt, an denen ich mit WebForms gearbeitet habe, die viel Haarziehen erforderten, was einfach nicht passiert wäre, wenn ich MVC benutzt hätte. Aber ich habe auch einige Websites, die nicht das Maß an Flexibilität benötigen, also habe ich WebForms verwendet.

Der größte Vorteil, den ich mit ASP.NET MVC sehe, ist AJAX. Es ist einfacher für mich, jQuery AJAX-Anfragen zu bearbeiten, wenn MVC anstelle von WebForms verwendet wird. Ich bin auch ein Kontrollfreak, also erfüllt die Verwendung von MVC auch diesen Aspekt ...

    
Bryan Rehbein 22.05.2009, 14:51
quelle
4

Der Ort ist nicht sehr wichtig, was erklärt wurde war, dass eine typische Intranet-Website die folgenden Eigenschaften hat:

  • Sehr geringe Benutzerbelastung, normalerweise aufgeschaltet internes LAN
  • Sehr kurze Entwicklung Zeitpläne
  • Sehr häufige Funktion Zusätze ", die aus CRUD Add-Ons bestehen

Die Entwicklung mit MVC kann also zu viel Aufwand sein, anstatt etwas mit WebForms zusammenzufügen.

    
David 22.05.2009 14:50
quelle
4

Ich denke, dass die interne / externe Website-Unterscheidung besser als datengetriebene Websites vs. contentgesteuerte Websites klassifiziert werden würde.

IM (sehr) HO die Verwendung der aktuellen Version von MVC, um zum Beispiel Dateneingabesysteme mit vielen tabellarischen Daten, Inline-Bearbeitung, Sortierung, Paging, Filterung usw. zu erstellen, ist im Vergleich zur Verwendung von WebForms ziemlich viel Arbeit.

Wenn die Website jedoch mehr darauf abzielt, dem Endnutzer Inhalte zu präsentieren (typische Websites: Blogs, E-Commerce-Apps, Portale), bietet MVC viele Vorteile gegenüber WebForms. Websites wie diese befassen sich in der Regel eher mit Darstellungsproblemen (was ein Problem darstellen kann, wenn Sie beim Rendern auf WebForms-Serversteuerelemente verzichten).

    
Andrew Corkery 22.05.2009 16:15
quelle
2

Für mich liegt der Vorteil von ASP.NET-Webforms darin, dass Sie sie schneller als mit ASP.NET MVC entwickeln können. Die Kosten: Es ist schwieriger, ihnen moderne CSS-kompatible Anwendungen und das Gewicht von Viewstate und dem Seitenlebenszyklus zu geben.

Wenn ASP.NET MVC nicht verfügbar ist, gibt es keinen Grund, das für Intranet-Anwendungen nicht zu verwenden.

Wenn Sie ein paar Jahre investiert haben, um ASP.NET-Webformulare zu verkleinern, können Sie sie wahrscheinlich für Internetanwendungen verwenden.

    
jrcs3 22.05.2009 14:50
quelle
1

MVC bietet eine bessere Trennung von Problemen als Webformulare, allerdings mit einigen Overhead-Kosten, die bei kleineren Projekten schwerer zu rechtfertigen sind. Die Entscheidung, das eine Modell gegenüber dem anderen zu verwenden, sollte nicht darauf basieren, ob es sich um eine Intranet- oder Internetlösung handelt, sondern um Faktoren wie Langlebigkeit, Wartbarkeit und Skalierbarkeit. Meiner Erfahrung nach ist MVC eine bessere Wahl, wenn das Projekt groß ist, ein großes und vielseitiges Entwicklungsteam hat und wahrscheinlich Wartung benötigt. Webforms eignet sich besser für die schnelle Entwicklung kleinerer kurzfristiger Projekte.

Selbstverständlich können und werden WebForms in großen Projekten verwendet, da MVC in kleineren Projekten verwendet werden kann. Sie müssen die Vorteile von jedem auf der Grundlage der Bedürfnisse Ihres Projekts erweitern.

    
Richard Dorman 22.05.2009 14:53
quelle
1

Ich sehe nicht den Unterschied in diesen beiden im Zusammenhang mit öffentlichen / Intranet-Anwendungen, ich sehe nur Unterschied in der Vorgehensweise und den Stil des Schreibens der Anwendung, also, wählen Sie, was auch immer Sie mögen:)

Prost

    
Marko 24.05.2009 14:38
quelle
0

Als Nebenbemerkung zu den anderen Antworten sind in einer Intranetumgebung URL-Namenskonventionen (d. h. / Controller / Methode ... usw.) viel weniger wichtig, da kein SEO benötigt wird.

    
Joey Robert 22.05.2009 14:55
quelle

Tags und Links