Ich suche eine wiederverwendbare Steuer oder benutzerdefinierte Helfer für mein MVC-Projekt zu erstellen. Ich bin sicher, dass es dafür eine Best Practice gibt. Jede Hilfe wird geschätzt.Was ist die beste Vorgehensweise zum Erstellen eines ASP.NET MVC-Steuerelements oder -Helfers?
Antwort
Sicher sind die besten Praktiken in den HtmlHelpers gekapselt und anderen Helfern im Quellcode MVC. Sie können die Quelle bei http://www.codeplex.com/aspnet
bekommen (Hass, mit Ihnen Scott nicht zuzustimmen), HtmlHelpers zu verwenden ist keine beste Praxis. Es ist keine Praxis, die durch den Einsatz in realen Projekten geschärft wurde und nur ein Ansatz ist. Ich habe vor kurzem eine little post on using SubControllers geschrieben .. wir verwenden HtmlHelper für einige kleine Dinge, aber wir verwenden SubControllers für größere Kontrolle, Zusammensetzung und Abhängigkeit Inversion.
Matt, ich könnte argumentieren, dass HtmlHelpers die MSFT-Methode zum Erstellen von Steuerelementen sind und dass sie diese Route empfehlen würden. Ob es weit verbreitet ist oder nicht, ist eine andere Geschichte. Danke für den zusätzlichen Link! –
Jason, du könntest das absolut bestreiten. Sie könnten das auch über DataSets diskutieren, aber jetzt gibt sogar MS sie auf. –
Matt - wie Subcontrollern sind, aus einer Sicht genannt, nach dem MVC-Muster? HTML-Helfer und Teilansichten sind Standard, aber ich würde sagen, dass Subcontroller (zumindest wie Ihr Team sie implementiert hat) auf unsicherem Grund stehen. –
- 1. Xcode Dateiverwaltung. Was ist die beste Vorgehensweise?
- 2. Was ist die beste Vorgehensweise für die Durchführung eines Passwortvergleichs?
- 3. Was ist die beste Vorgehensweise zum Erstellen eines Unix/Linux-Befehlszeilentools in C/C++?
- 4. register_shutdown_function() - Was ist die beste Vorgehensweise?
- 5. Fehlercode oder Ausnahme - was ist die beste Vorgehensweise für einen ASP.Net-Webdienst?
- 6. Was ist die beste Vorgehensweise zum Implementieren der Websitensuche in der statischen ASP.NET-Website?
- 7. TDD: Was ist die beste Vorgehensweise zum Testen von DataAnnotations in ASP.NET MVC 3?
- 8. Was ist die beste Vorgehensweise für die Zeitzonenbehandlung in MySQL?
- 9. Fadensicherheit ... Was ist meine "beste" Vorgehensweise?
- 10. Was ist die beste Vorgehensweise zum Erstellen einer JAR-Datei aus einem Java-Projekt?
- 11. Was ist die beste Vorgehensweise zum Erstellen einer AngularJS 1.5-Komponente in Typescript?
- 12. Was ist die beste Vorgehensweise beim Einsatz von MODX?
- 13. Was ist die beste Vorgehensweise für Wakanda 4D Fehlerbehandlung?
- 14. Was ist die beste Vorgehensweise bei Medienabfragen in CSS3?
- 15. ADFS - Was ist die beste Vorgehensweise zum Einschränken des Benutzerzugriffs und zum Bereitstellen von Benutzerattributen?
- 16. Was ist die beste Vorgehensweise für eine Such-SQL-Abfrage?
- 17. Was ist die beste Vorgehensweise für schreibgeschützte Listen in NHibernate?
- 18. Leerzeichen in Xcode-Projektnamen, was ist die beste Vorgehensweise?
- 19. Was ist die beste Vorgehensweise für "private" öffentliche URLs?
- 20. getClass() und statische Methoden: Was ist die beste Vorgehensweise?
- 21. MATLAB GUI - Accessor-Methode oder Eigenschaft bearbeiten? Was ist die beste Vorgehensweise?
- 22. Was ist die beste Vorgehensweise zum Speichern von mehrschichtigen Daten in mySQL?
- 23. Was ist die beste Methode zum Erstellen von ClickOnce-Bereitstellungen?
- 24. Was ist die beste Vorgehensweise zum Anzeigen mehrerer Ansichten in Codeigniter?
- 25. Was ist die beste Vorgehensweise zum Behandeln von Ausnahmen bei der Verwendung der Befehlsbindung in WPF?
- 26. Was ist die beste Vorgehensweise zum Speichern von UI-Messaging-Zeichenfolgen in Python/Django?
- 27. Was ist die beste Vorgehensweise zum Registrieren von Routen basierend auf Berechtigungen in Ember.js?
- 28. SAML SP-Metadaten: Selbstsigniertes Zertifikat oder CA-Zertifikat, was ist die beste Vorgehensweise?
- 29. Was ist die beste Vorgehensweise zum Aktualisieren von Entitäten in Linq2SQL?
- 30. Was ist die beste Vorgehensweise zum Sperren serieller Ports und anderer Geräte in Linux?
Das ist alles? Beeindruckend. Ich habe die Dinge sicherlich komplexer gemacht, als es sein musste. Danke Scott! –