2008-08-15 5 views
10

Ich arbeite mit C# bei der Arbeit, mag aber nicht, wie es mit Webforms viel JavaScript ausspuckt, ohne die vielen Zeilen für den Viewstate, die es erstellt.Wie ist das HTML auf dieser Seite so sauber?

Deshalb mag ich Codierung mit PHP, da ich die volle Kontrolle habe.

Aber ich habe mich nur gefragt, wie diese Websites HTML so sauber und elegant ist?

Hat die Verwendung von MVC etwas damit zu tun? Ich sehe, dass JQuery verwendet wird, aber Sie verwenden immer noch asp: erforderliche Validatoren? Wenn ja, wo ist all der schreckliche Code, den er normalerweise produziert?

Und wenn sie nicht erforderliche Feldvalidatoren verwenden, warum nicht? Sicherlich ist es schneller zu entwickeln als mit JQuery?

Einer der Hauptgründe, warum ich meine persönlichen Seiten in PHP code, war der elegantere HTML-Code, den es produziert, aber wenn ich Code wie diese Seite erstellen kann, werde ich Vollzeit .net!

Antwort

9

Eines der Ziele von ASP.NET MVC besteht darin, Ihnen die Kontrolle über Ihr Markup zu geben. Es gab jedoch immer Alternativen mit ASP.NET, mit denen Sie relativ sauberes HTML generieren konnten.

Zum Beispiel hat ASP.NET immer eine Wahl mit Validator-Steuerelementen angeboten. Schätzen Sie Entwicklungsgeschwindigkeit über Markup? Verwenden Sie Validatoren. Wertmarkierung über die Entwicklungsgeschwindigkeit? Wählen Sie einen anderen Überprüfungsmechanismus. Ihre Kommentare zu Validatoren sind dort widersprüchlich - es ist möglich, ASP.NET zu verwenden und trotzdem die Markup-Reinheit über die Entwicklungsgeschwindigkeit zu wählen.

Auch mit Webforms haben wir seit einigen Jahren die CSS Friendly Control Adapter, die die Steuerelemente modifizieren, um mehr semantisches Markup zu machen. ASP.NET 3.5 enthielt die ListView, die es sehr einfach macht, Repeater-Typ-Steuerelemente zu schreiben, die semantisches HTML ausgeben. Wir haben ASP.NET-Webforms auf der Microsoft PDC-Site verwendet und haben den HTML-Code ziemlich sauber gehalten: http://microsoftpdc.com/Agenda/Speakers.aspx - der Viewstate konnte wahrscheinlich auf den meisten Seiten deaktiviert werden, obwohl es in Wirklichkeit nur ein paar Dutzend Byte ist.

3

Sie waren auf dem richtigen Weg. Es ist die Tatsache, dass sie das ASP.NET MVC Web Framework verwenden. Es ermöglicht Ihnen die volle Kontrolle über Ihre Ausgabe HTML.

2

Ja - MVC verwendet den ASP.NET-Ansichtszustandsmüll nicht.

3

Die ASP.NET MVC Framework ist eine Alternative zu den normalen "Web Forms" Art der ASP.NET-Entwicklung. Damit verlieren Sie viel Abstraktion, gewinnen aber viel Kontrolle.