2 Stimmen

ASP.NET MVC: Mache ich es richtig?

Ich bin also ein alter Webformulare Kerl und neu in der MVC (im Allgemeinen, nicht nur ASP.NET) Rahmen. Meine Ansichten beginnen, eine Menge wie die gute alte klassische ASP aussehen. Nicht, dass ich irgendeine Geschäftslogik oder so etwas hinzufügen würde, sondern eher eine Präsentationslogik. Ich ende mit einer Menge von <% %> Tags und if/else Anweisungen, um zu entscheiden, welche Links angezeigt oder welche Stile verwendet werden sollen.

Ich dachte auch an die Stile oder Links innerhalb des Controllers zu entscheiden und Sie auf dem Modell zu setzen, aber klingt wie die MVC Zweck zu brechen.

Am Ende ignoriere ich die <% %> um sicherzustellen, dass mein HTML gut geformt ist.

Ich möchte Ihre Meinung hören. Sind Sie der gleichen Meinung wie ich? Mache ich etwas falsch?

2voto

mxmissile Punkte 10738

Wenn ich eine Menge Präsentationslogik habe, versuche ich, diese in eine Erweiterung der HtmlHelper-Klasse zu verschieben.

1voto

Bryan S. Punkte 1434

Zusammen mit dem, was mxmissle sagte (ich stimmte ihn auf) sagt, ich werde eine partielle Ansicht zu tun, um komplexe Bereiche einer Seite zu einer separaten Datei zu verschieben, hilft es, Dinge aufzuräumen sowie Code-Wiederverwendung.

Ich finde, wenn die Dinge ein bisschen zu altmodisch aussehen, ist es Zeit, ASP zu überarbeiten. Es ist überraschend, was Sie in eine Hilfsklasse oder partielle Ansicht aufräumen können, oder einfach neu mit etwas mehr prägnant.

Edit: Auch wenn es ein bisschen zu sehr nach ASP aussieht, haben Sie vielleicht eine Logik in Ihrer Ansicht, die dort nicht hingehört.

0voto

Craig MacGregor Punkte 4479

Normalerweise erstelle ich für jede Ansicht eine eigene ViewModel-Klasse, die alle mit der jeweiligen Ansicht verbundenen Logiken enthält. Dies ist gut für Situationen, in denen das Ergebnis einer Bedingung nur ein einfaches DIV- oder SPAN-Tag ist, das nicht wirklich eine eigene Erweiterung oder Teilansicht rechtfertigt.

Ich finde, dass es den klassischen ASP-Look meiner Meinung nach deutlich verbessert.

参照 Stephen Walther's Blog für weitere Informationen zu diesem Ansatz.

0voto

Kevin Pang Punkte 40296

Ja, Sie machen es richtig. ASP.NET MVC ist nicht in jeder Hinsicht eine Verbesserung gegenüber klassischen Webformularen. Es hat seine Vor- und Nachteile ("Tag-Suppe", wie Sie entdeckt haben, ist einer der Nachteile).

Es gibt ein paar Möglichkeiten, die Schmerzen zu lindern (Verschieben von möglichst viel Logik in das Modell, HTML-Helfer, partielle Ansichten usw.), aber es ist schwer zu vermeiden.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X