2010-01-08 6 views
1

Nous commençons un nouveau projet dans ASP.Net MVC, pourriez-vous s'il vous plaît suggérer quel est le meilleur?Quel est le meilleur modèle pour ASP.Net MVC?

J'ai ajouté cette question pour savoir quelles sont les différentes options.

+12

Le meilleur quoi? ASP.NET MVC suppose que vous utiliserez le modèle MVC. –

Répondre

4

Voir Architecture S # arp.

http://www.sharparchitecture.net/

Ce projet (modèle pour Visual Studio) avec une série de motifs et de Bonnes pratiques.

Ce projet suit les règles de la conception par domaine.

[] de

+0

+1, pas un mauvais point de départ. Pensez @Ravia a besoin des bases en premier. – griegs

+0

J'ai commencé à utiliser sans aucune connaissance de ASP.NET MVC, NHibernate, et peu de jQuery (mais bon OOP, ASP.NET et bases de données). À mon avis, S # arp est très bon pour donner à tout le monde un démarrage rapide, car il élimine presque tous les problèmes d'infrastructure, et on peut commencer à essayer des choses tout de suite - c'est-à-dire une approche pratique de l'apprentissage. – queen3

1

Si vous venez d'un environnement WebForms alors vous êtes probablement à l'aise avec ViewState etc.

Mon conseil est de sortir de cela et commencer à penser de repos et de l'écriture d'applications RESTful .

La vie devient beaucoup plus facile après cela.

Espérons que c'est ce que vous demandiez.

2

Ravia, Plutôt que de poster des questions d'ordre général, pourquoi ne prenez-vous pas le temps de lire ou de regarder une bonne présentation sur MVC, consultez Scott Guthries intro to MVC, c'est long mais ça vaut le coup. Vous aurez une idée de ce que vous voulez faire ensuite

3

Il est souvent recommandé d'utiliser le modèle MVVM, ce qui signifie avoir ViewModels. Fondamentalement, pour chaque vue, il existe une classe Model simple qui contient toutes les données qui vont dans la vue. Ceci est fait pour éviter de "passer trop" (objets métier complexes) dans le Modèle et de composer facilement le ViewModel. Par exemple, si vous devez afficher certaines données d'une classe Business appelée «Utilisateur» (ie le nom) et certaines données d'une liste de commandes (c.-à-d. Numéros de commande), vous pouvez créer une classe modèle qui ne contient que le nom d'utilisateur de la chaîne et un IEnumerable de chaîne avec juste les numéros de commande. Cela permet également de simplifier la classe, par exemple au lieu d'avoir à écrire "User.CurrentAddress.ZipCode", vous pourriez juste avoir une chaîne ZipCode, ce qui réduit l'imbrication.

La principale raison de ce viewmodel est qu'il est facile à changer. Supposons que vous vouliez également afficher le dernier élément commandé par l'utilisateur - Fin, ajoutez simplement une nouvelle propriété au ViewModel. Si vous avez passé la classe User directement à la vue, vous devrez peut-être faire quelque chose comme User.Orders.Last(). Items.Last() qui est moche et pourrait avoir d'énormes implications de performance - et il suppose que la classe User a accès aux commandes! Si vous avez soudainement besoin d'ajouter un champ d'une autre classe, vous devez faire un gros refactoring.

+1

Et voici une application de référence simple en utilisant l'approche du modèle de vue dans un certain nombre de différentes plates-formes d'interface utilisateur: http://polymorphicpodcast.com/vmworkshop/ – rohancragg

Questions connexes