2009-08-20 5 views
3

Quelqu'un a-t-il des recommandations sur l'implémentation de la mise en page dans les formulaires Web ASP.NET lors de l'application du modèle MVP? Je me demande où mettre la logique de pagination ... dans la vue ou dans le présentateur? Une autre façon d'implémenter la mise en page dans ASP.NET est également d'utiliser le contrôle PagedDataSource ... Serait-il correct d'utiliser cela à partir d'un présentateur ou ferions-nous mieux d'implémenter une logique de recherche personnalisée. Les données sont affichées dans la vue à l'aide d'un contrôle Repeater.Implémentation de la mise en page à l'aide de MVP

À la votre!

Répondre

2

Je ne sais pas exactement, quelle est la différence entre mvp et mvc, donc je pense que this post pourrait vous être utile. Personnellement, j'aime l'idée de créer un hepler en dehors du modèle ou du contrôleur (présentateur?). De plus, le mécanisme de pagination jquery est assez simple. Dans le présentateur, il suffit d'ajouter des paramètres pour les lignes de données demandées et de renvoyer uniquement celles-ci au lieu de table entière/grille/autre.

2

Je pense que la vue et le présentateur ont besoin de connaître la pagination. Voici pourquoi:

  • La pagination intelligente ne doit extraire que les données nécessaires pour remplir une page. C'est une collaboration entre le Présentateur et le Modèle dans mon esprit. Dans MVP pedant, la vue n'a aucune connaissance du modèle, ainsi le présentateur doit être l'intermédiaire. Dans MVC, vous pourriez sortir avec l'exclusion du contrôleur avec un modèle de domaine assez fort.
  • La vue doit savoir sur la pagination afin que l'utilisateur peut interagir avec le metaphore de radiomessagerie (Next, Précédent, un rendu correct, etc.)

Je ne suis pas terriblement familier avec le PagedDataSource. Si vous utilisez WebForms, vous êtes probablement arrosé si vous voulez vous en tenir à une implémentation fidèle de MVP. Peut-être pourriez-vous configurer la mise en cache de la page pour PagedDataSource (s'il y en a une) dans le Presenter et le glamour de l'interface graphique dans la vue. Cela signifierait passer une référence à un contrôle utilisateur, mais peut-être que c'est correct.

Bravo à vous pour avoir essayé de faire fonctionner MVP avec WebForms. J'aimerais entendre comment ça se passe.