2009-02-19 7 views
3

J'ai une question sur les vues complexes dans ASP.NET MVC. Où puis-je trouver de bons exemples ou de bonnes pratiques sur des vues complexes et comment les créer au mieux dans ASP.NET MVC? Je connais les bases, mais pepper le HTML avec du HTML dynamique complexe et/ou jQuery semble être en désordre.Vues complexes ASP.NET MVC

Des liens vers les meilleures pratiques d'entreprise ou des exemples d'expérience seraient appréciés.

Répondre

3

Pour réduire la complexité des pages, je développe moi-même ViewUserControls pour encapsuler des fonctionnalités réutilisables qui sont incluses sur plusieurs pages. Parfois, ils sont génériques (comme un GridControl), parfois spécifiques (comme un ensemble d'éléments de menu basés sur les rôles qui ne sont inclus que lorsque l'utilisateur est autorisé). J'utilise un gabarit pour définir le contour de base de la page afin qu'il soit commun à toutes les pages - cela inclut les commandes et les menus de connexion/déconnexion. Chaque vue inclut ensuite les autres ViewUserControls dont elle a besoin via l'extension RenderPartial HtmlHelper. L'autre chose que j'ai remarqué est que je n'essaie pas de faire autant de choses par vue que dans une application WebForms - les actions et les vues sont plus petites et plus simples que beaucoup de mes anciennes pages WebForms. Par exemple, j'aurai une vue Nouveau et une vue Modifier, chacune d'entre elles comprenant un ViewUserControl commun qui contient les entrées du formulaire et une vue Show séparée qui n'a pas d'entrées, mais seulement des travées avec le contenu. Les vues réelles seront assez simples et ne contiendront que les différences que vous remarquerez entre les formulaires. Dans un formulaire Web, j'aurais eu un contrôle DetailsView basé sur un modèle et tout fait dans un formulaire.

Depuis que je travaille sur ma première application MVC - c'est une application intranet et pas encore en production - je ne peux pas vraiment partager un lien. J'apprends toujours comme je vais, mais cela semble être la direction naturelle pour cette application de toute façon. Jusqu'à présent, je n'ai pas vraiment trouvé le balisage plus complexe que les applications WebForm que j'ai développées.

+0

Je vois que votre réponse a été faite il y a longtemps. Utilisez-vous toujours les commandes utilisateur? –

+2

@Kees - oui vues partielles pour beaucoup de choses partagées, en-têtes, pieds de page, affichages communs. Je quitte le GridControl en faveur de nouvelles choses qui sont ajoutées au framework, mais les partiels font toujours partie de l'équation. – tvanfosson

+0

C'est exactement comme ça que je le fais aussi. Vues partielles pour des éléments communs (par exemple dans le cas d'un clone de dépassement de pile, le vote serait un contrôle partiel, comme cela serait une question, etc., etc.). –

Questions connexes