dimanche 15 août 2010

DNN : Comment modifier le mot de passe d'un utilisateur

Dans un précédent billet je décrivais comment récupérer le mot de passe d'un utilisateur, et bien là j'en suis à vouloir le modifier. Là encore il y a une petite astuce.

Il faut dans un premier temps récupérer les informations de l'utilisateur sur lequel on souhaite travailler :

Imports Imports DotNetNuke.Entities
...
dim oUserInfo as Users.UserInfo 
'Récupération des informations de l'utilisateur à partir du "user name"
oUserInfo = Users.UserController.GetUserByName(iPortalId, sUserName)
'Récupération des informations relatives au membership de cet utilisateur
Users.UserController.GetUserMembership(oUserInfo)

On note ici la récupération du "membership" de l'utilisateur. Ces informations sont nécessaires car nous allons devoir récupérer l'ancien mot de passe et cela n'est pas possible sans la propriété "PasswordAnswer" :

'Récupération de l'ancien mot de passe 
dim sOldPassword as string = Users.UserController.GetPassword(oUserInfo, oUserInfo.Membership.PasswordAnswer)

Il ne reste plus qu'à modifier l'ancien mot de passe ainsi :

'Modification du mot de passe
Users.UserController.ChangePassword(oUserInfo, sOldPassword, sNewPassword)

jeudi 5 août 2010

VS 2010 : Comment se placer sur le fichier en cours d'édition

Lorsque je suis passé sous Visual Studio 2010, j'ai rapidement été assez agacé par la perte d'une petite fonctionnalité qui était fort pratique : le fait qu'un fichier édité soit automatiquement sélectionné dans l'explorateur de solution.

Cette fonctionnalité est pratique notamment lorsque l'on a un nombre conséquent de fichiers en cours d'édition et que l'on souhaite accéder au fichier .aspx du fichier codebehind que l'on est train d'éditer.

Il est heureusement possible d'activer cette fonctionnalité à partir des options de VS, vous la trouverez en passant par le menu "Options", puis la section "Projets et solutions", puis "Général" et là vous avez une petite case à cocher "Suivre un élément actif dans l'explorateur de solutions"