Application console sharepoint et membership provider (FBA)

Après mise à jour de leurs propriétés perso les SPuser de mes utilisateurs FBA  perdent leur courriel.

perte courriel
Afin de corriger ce problème j’ai décidé de créer une application console qui récupère le courriel du MembershipUser de l’utilisateur pour le réaffecter à son SPUser.

Après avoir créer mon projet console Visual Studio (x64) un problème se pose, je n’arrive pas à initialiser mon membership provider qui reste désespérément null, impossible donc de récupérer l’email perdu.

Après recherche sur le web une première solution ressort, lorsqu’un code fonctionnant en mode web ne fonctionne pas en mode console le problème vient généralement de la perte des informations du Context. L’ajout du code snippet suivant en début de code permet de résoudre ce problème

Dans mon cas le problème persiste après l’ajout de ce code. Il me faut donc continuer de chercher.

En fait le problème est assez simple (après coup). L’initialisation de mon membership provider nécessite des informations se trouvant dans le web.config de mon site. Mon application console n’y a pas accès, il me faut donc lui donner ces informations.

Pour ce faire je vais modifier le fichier app.config de mon application console. J’y ajoute les informations nécessaires à l’utilisation de mon membership provider en mode console.

Et voilà, tout mon code fonctionne maintenant.

A noter les deux paramètres de l’application console :

  • URL_SITE : L’url du SPsite
  • FBAPROVIDER : Nom du provider personnalisé au cas où le code ne puisse le récupérer automatiquement.

Le code complet de mon application console sharepoint 2010 avec accès au membership provider.

 

 

 

 

 

 

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

*