2010-09-13 2 views
0

Nous devons générer des formulaires pour Créer/Afficher/Modifier sur notre site Web. L'exigence est que ceux-ci doivent être pilotés par des métadonnées. Nous aurons des propriétés sur notre modèle attribuées avec le type de contrôle à générer pour cette propriété.
Approche suggérée pour générer des pages en fonction des attributs des propriétés dans le modèle dans ASP.Net MVC!

[RenderAs("DatePicker", Order = 1)] 
public DateTime DateOfBirth{get; set;} 

L'idée est d'avoir des modèles pour chacun d'entre eux comme la date-Picker.ascx, etc dans le SharedFolder
Nous devons générer environ 25 ces formes et sommes à la recherche d'un moyen d'y parvenir reuseable. Quelle serait la meilleure façon de gérer les validations avec ceci (validations de base comme requises, inférieures à, supérieures à, etc.)? Que suggérez-vous pour les validations de champs dépendants (inférieures au champ, supérieures au champ)? Est-ce que cela semble raisonnable?

Merci

+0

avez-vous déjà entendu parler des assistants basés sur un modèle mvc2 ou des constructeurs d'entrée de mvccontrib? – Omu

+0

Oui, ce que nous utilisons. Maintenant, c'est la partie difficile. –

+0

Nous avons des modèles pour Titre, Description, etc. Le champ Titre est appelé titre dans un modèle et Nom dans un autre. Comment obtenons-nous les étiquettes correctes dans de tels cas? –

Répondre

1

Il semble que vous cherchez des modèles MVC 2.

Utilisez DisplayForModel pour les vues en lecture seule et EditorForModel pour les formulaires de création/modification créés à partir des métadonnées du modèle de vue. Utilisez les attributs Data Annotations pour décorer le modèle de vue avec des règles de validation et d'autres informations de rendu (étiquette, modèle personnalisé à utiliser, etc.).

Voici un rapide intro video to MVC 2 templates.

0

Vous mélangez le concept Model and View. Pourquoi avez-vous besoin de MVC ALORS? À la pratique, vous devrez faire face à des situations où l'administrateur a besoin de quelques changements mineurs par rapport à l'utilisateur régulier, et il sera difficile à supporter dans les cas où le formulaire est généré en utilisant des attributs. Je ne dis pas que c'est mieux, mais nous avons décidé de nous en tenir au concept de forme et à chaque forme capable de décider quoi montrer et comment montrer. Et nous avons défini le nombre de méthodes auxiliaires comme RenderDatePicker qui font tout le sale boulot.

+0

L'administrateur ne changera probablement pas les formulaires. Nous avons juste besoin d'une manière plus rapide de faire 25+ formes de crud. –

1

Découvrez ASP.Net Dynamic Data. C'est à peu près ce que vous cherchez. (Et si vous pouvez utiliser .Net 4.0 alors vous devriez être capable d'utiliser MVC, webforms, et DynamicData tous dans un projet.)

Questions connexes