Vous êtes ici Forums
  |  Connexion
 Forums
HomeHomeForums DNNForums DNNDéveloppementDéveloppementRelation dans un moduleRelation dans un module
Précédente
 
Suivante
Nouveau message
12/01/2010 15:49
 

Bonjour,

Je me suis penché actuellement sur la création d'un module(en VB) reprenant l'affichage de données, l'ajout ainsi que le modification à partir d'une base de données. Mais je suis un peu freiné. Je ne comprends pas exactement les lien existant entre DataProvider, controler, info, sqldtatProvider, ainsi que edit.ascx, settings.ascx, view.ascx, ainsi que leur contenu.

Merci

 
Nouveau message
19/01/2010 16:20
 

Bonjour Romain,

DNN utilse un modèle 3 tiers pour le développement de module. La couche DAL (Data Access Layer) est constitué de trois "sous" couches. La première l'Abstract Data Provider correspondont à la classe DataProvider et consiste en une classe abstraite pour définir les signatures des méthodes à implémenter dans SqlDataProvider (seconde sous couche nommée Concrete Data Provider) qui est la classe concrète dédiée à SQL Server. La dernière sous couche c'est le Data Access Application Blocks, DNN utilise les Microsoft Application Blocks (voir Design and Patterns sur le site MSDN). Ceci permet de découpler la logique de l'implémentation. Imagine qu'il faille utiliser SQL Server sur une plateforme et Oracle sur une autre, il te suffira alors de réécrire que le projet SqlDataProvider en OraDataProvider et les procédures stockées correspondantes. Le Controler constitué de plusieurs classes, contient logiquement la classe DataProvider et une ou plusiers classes InfoXXXX. Cette dernière, par exemple InfoContact, est utilisée pour recevoir les données d'un contact lors de la lecture dans la base. C'est la couche BLL (Business Logic Layer). Ceci peut paraitre une peu difficile à comprendre de prime abord, mais cette architecture est très répandue, pas seulement sous DNN ! :-) Mais là c'est un cours d'architecture que je devrais te faire. Quand aux contrôles, ils forment la dernière couche (Presentation Layer). Le contrôle ViewXXX est utilisé pour afficher les données à l'utilisateur. Le contrôle EditXXX sert à modifier les données. Enfin le contrôle Settings sert à définir les paramètres spécifiques à une instance de ton module.

Gilles

 
Précédente
 
Suivante
HomeHomeForums DNNForums DNNDéveloppementDéveloppementRelation dans un moduleRelation dans un module