Vous êtes ici Forums
  |  Connexion
 Forums
HomeHomeForums DNNForums DNNDéveloppementDéveloppementImport dImport d'utilisateurs d'une base tierce
Précédente
 
Suivante
Nouveau message
16/04/2008 10:35
 

Bonjour,

J'ai une base avec des utilisateurs (nom,prenom,mail,login,password) et je souhaiterais les importer automatiquement dans dnn.

Au debut je pensais utiliser les procedures stockées AddUser puis addUserRole pour ajouter les groupes qui sont necessaire...

ça me cré bien les utilisateurs mais bien sur il ne peuvent pas se connecter.

il faudrait utiliser la procedure aspnet_Membership_CreateUser pour qu'il puisse se connecter ?

Je cherche dans les sources de dnn, mais je n'arrive pas à trouver comment faire une insertion propre ...

Vous n'avez pas une piste ?

Merci d'avance 

 
Nouveau message
16/04/2008 12:20
 

Bonjour,

Pour rajouter des utilisateurs, et plus généralement pour utiliser n'importe quelle foncitonnalité exposée par des formulaires DNN, il faut absolument éviter de taper directement en base, et au contraire se brancher "au plus prèt" de la couche de présentation.

La démarche est la suivante:

Etant donné que la création d'un utilisateur implique un certain nombre de traitements métiers qu'il s'agit de ne pas court-circuiter, il faut rechercher le point d'entrée le plus complet, qui se situera certainement dans l'API métier de DNN, en amont des procédures stockées.

Le meilleur moyen pour identifier le bon point d'entrée est de partir des formulaires dnn qui implémentent la fonctionnalité (dans le répertoire admin pour les formulaires d'administration), et de descendre la pile d'appel jusqu'au point qui convient.

Concrètement, ici, il s'agit de regarder dans le formulaire de création d'utilisateur, et de partir de l'evenement de clique sur le bouton d'enregistrement, qui entre autre déclanchera la création d'un utilisateur, puis d'analyser l'ensemble des opérations déclanchées pour trier le nécessaire de l'accessoire.

Dès qu'une méthode semble faire l'affaire, pas la peine de descendre plus bas. Cette méthode comprend très certainement l'ensemble des actions nécessaires, et appelle probablement d'autres méthodes similaires qui elles-mêmes appelleront des procédures stockées, mais c'est bien la méthode parente et complète qui nous intéresse.


Jesse
Société de conseil et de service en 
informatique et systèmes d'information
 
Nouveau message
17/04/2008 13:27
 

Effectivement c'est comme cela qu'il faut programmer avec Dnn, et en général avec nimporte quel système opérant complexe.

Ici je ne considèrerait que la tâche : importer des utilisateurs depuis une autre base. Et il existe un module qui fera cela pour toi, ça coûte 20$ (12 euros) et il prendra ta liste d'utilisateurs au format CSV ou XML pour les ajouter à la base Dnn. C'est par ici ; http://www.snowcovered.com/snowcovered2/Default.aspx?tabid=242&PackageID=8918

On peut aussi s'en servir comme utilitaire de synchro des utilisateurs entre deux systèmes opérants bien distincts.

Pour finir je dirai que c'est simple, c'est presque gratuit et en tout cas ça revient moins cher que de développer le système tout seul, et c'est éprouvé.

Seb

 
Précédente
 
Suivante
HomeHomeForums DNNForums DNNDéveloppementDéveloppementImport dImport d'utilisateurs d'une base tierce