Bonjour à tous,
J'ai un petit problème avec l'exception Stack Overflow qui commence à me courir sur le système car je n'arrive toujours pas à comprendre ce qui la déclenche.
J'ai une classe "User" qui a pour but de stocker des variables relatives à un compte client sur mon site. Cette classe comprend entre autre un "user_id" de type Guid. Voici les premières lignes de ma classe :
Et voici le constructeur de la classe :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 public class User { protected Guid user_id { get {return user_id;} set {user_id = value;} }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 public User( Guid userId, String userLogin, String userPassword, String userPrenom, String userNom, String userEmail, int userLvl, Guid agenceId) { this.user_id = userId; this.user_login = userLogin; this.user_password = userPassword; this.user_prenom = userPrenom; this.user_nom = userNom; this.user_lvl = userLvl; this.agence_id = agenceId; }
Jusque là, aucun problème !
Bref, maintenant j'ai une page de login (login.aspx) qui permet de s'identifier. Pour ca j'ai utilisé l'outil intégré par microsoft "login control" et j'ai crée mon propre provider. J'ai donc overridé la fonction ValidateUser qui me permet de confirmer l'identification d'un utilisateur fraichement identifié. Je récupère donc les données dans la BDD et je les passe au constructeur de ma classe User comme suit :
en ayant bien sur récupéré les valeurs dans le reader précédement :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 User oCurrentUser = new User(_userId, _userLogin, _userPassword, _userPrenom, _userNom, _userEmail, _userLvl, _agenceId);
Lorqsue je test la page, j'obtiens une Stack Overflow Exception l'appel au premier "set" de variable de ma classe User. Que ca soit le userId ou le Login, ca ne change rien ! Je n'arrive vraiment pas à comprendre ce qui génère cette exception.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Guid _userId = rdr.GetGuid(0); ...
Si vous avez une idée je serais ravi de l'entendre ca me débloquerais pas mal sur mon projet ^^
Merci d'avance !
Partager