public static Boolean Validate(String Token, Role pRole)
        {
            if (Role.ALL == pRole) {
                return true;
            }

            var boolResult = false;

            try {
                using(var sessionManagerDal = new SessionManagerDAL(Util.GetConnection())) {
                    var lstObjSessionManager = sessionManagerDal.SessionManagerDAL_ById(Token).ToList();
                    if (lstObjSessionManager.Count() == 1) {
                        switch ((Role)lstObjSessionManager[0].UserRole) {
                            case Role.ADMIN: case Role.CLIENT:
                                    boolResult = true;
                                break;
                            case Role.NONE:
                                boolResult = false;
                                break;
                            default:
                                throw new Exception("Not accessible, unknow userRole");
                        }
                    }
                }
            } catch (Exception ex) {
                throw;
            }

            return boolResult;
        }
        public static SessionManagerBO OpenSession(string pUsername, string pPassword)
        {
            SessionManagerBO sessionResult = null;
            try {
                using (var sessionProxy = new SessionManagerDAL(Util.GetConnection())) {
                    var lstSession = sessionProxy.SessionManagerDAL_CreateSession(pUsername, pPassword).ToList();
                    if (lstSession.Count() == 1) {
                        sessionResult = lstSession[0];
                        var objPersonne = PersonneBL.SelectById(sessionResult.PersonneId);
                        //using (PersonneDAL sessionPersonne = new PersonneDAL(Util.GetConnection())) {
                        //	PersonneBO personne = sessionPersonne.PersonneBO_SelectById(sessionResult.PersonneId).ToList()[0];
                        //	sessionResult.Personne = personne;
                        sessionResult.Personne = objPersonne;
                        sessionResult.IsAdministrateur = objPersonne.Administrateur != null;
                        //}
                    }
                }
            } catch (Exception ex) {
                throw;
            }

            return sessionResult;
        }