Ich habe ASP.NET (C#) für die letzten zwei Jahre verwendet. Ich habe so viel gelernt, aber es gibt noch viel mehr :)Web-Benutzersteuerelemente anstelle von Web Forms verwenden
ich verwendet habe Masterpages zu lernen, ‚Web User Controls‘ für Dinge wie Header, Navigation, Fußzeilen usw.
Eine Sache, die ich nie wirklich haben verstanden wird die Verwendung von "Web User Controls" für Ihren Inhalt und Ihre Logik;
Home.aspx ------ Home.ascx
AboutUs.aspx ----- AboutUs.ascx
Ordering.aspx ---- Ordering.acsx
Ich habe in den letzten Monaten mit ein paar Projekten gearbeitet, die diese Struktur verwenden. Ich bin mir bewusst, dass dies tatsächlich gängige Praxis ist, aber ich verstehe die Vorteile nicht wirklich.
Ich erinnere mich, als ich diesen Ansatz versuchte und schreckliche viewstate Probleme mit Steuerelementen wie der Gridview hatte ... sobald ich die ganze Logik aus und legte es in eine ASPX-Seite alles hat gut funktioniert.
Ich erkenne jetzt, dass ich vielleicht die Gridview der Viewstate-Sammlung hinzufügen musste ... aber dies verstärkt nur meine Schwierigkeit zu verstehen, warum dieser Ansatz verwendet wird - angesichts des Viewstate-Problems.
Ich verstehe die Vorteile von 'Web User Controls' in Bezug auf Kopfzeilen, Menüs, Fußzeilen usw. überall, wo es Doppelungen gibt, aber die Projekte, die ich gesehen habe, haben ziemlich spezifische Seiten Mit anderen Worten, es ist unwahrscheinlich, dass es irgendwo anders wiederverwendet wird - die aspx-Seite enthält nur ein Steuerelement (.ascx) mit dem Inhalt und der Logik und es wird nur auf dieser Seite verwendet, nirgendwo anders.
Ignorieren "Code-Wiederverwendung", welche anderen Vorteile bietet dieser Ansatz?
In diesem Fall sehe ich keinen Vorteil bei der Verwendung dieser Methode (:
Brian, etwas wie ein Kommentarformular in einem Web-Steuerelement platzieren macht total Sinn, ich bin für alle Widgets wie diese in Steuerelemente ... vielleicht diese Projekte, die ich wo gesehen habe Die ganze Seite ist in einem Web-Steuerelement verschachtelt ist nicht die Art und Weise, Dinge zu tun? .... wenn Home.aspx mehrere Steuerelemente wie 'HomepageSlideshow.ascx', 'TwitterFeed.ascx' enthielt, wäre das viel sinnvoller. – Dal
@Dal, genau. Obwohl technisch unterschiedlich, verhalten sich eine Seite und eine Web-Benutzer-Kontrolle im Wesentlichen sehr ähnlich, und es muss ein wirklicher Zweck gegeben sein, damit der Ansatz, den Sie beschreiben, genommen wurde. Ohne weitere Details gibt es keinen offensichtlichen Nutzen –