Accueil > Forum > > > > Pb de connexion
Pb de connexion
jeudi 15 février 2007 à 18:14:02 |
Pb de connexion

blowlagoon
|
Bonjour, J'ai un petit pb avc mon code de connexion sur ma page principale. je m'explique : J'ai placé mon code de connexion sur ma master page on me disant que sur le load de ma page la connexion s'effectue une fois pour tte durant tte la durée de l'utilisation de l'applis web. sauf que lorsque j'ai ajouté un treeview dans ma page master et en effectuant un clique sur un noeud pour acceder à une page fille et ce sur l'evenement "TreeView_DataList_SelectedNodeChanged", j'ai une erreur qui est provoquée : {"Timeout expired. The timeout period elapsed prior to obtaining a connection from the pool. This may have occurred because all pooled connections were in use and max pool size was reached."} cela est dû biensur au fait que ma connexion s'ouvre plusieurs fois (plusieurs passage dans le load de la page master). Donc ma question est pourquoi le code sur le load de la page est executé plusieur fois alors que c le TreeView_DataList_SelectedNodeChanged qui est demandé? Et ma 2eme question est-ce que j'ai bien fait de mettre mon code de conexion sur mon load_page de la master page? Merci. 
|
|
jeudi 15 février 2007 à 22:40:20 |
Re : Pb de connexion

nhervagault
|
Salut,
Ta méthode est incorrecte.
Le but de dotnet et du web c'est d'être le moins possible connecté à la base.
D'ou l'utiilisation et l'apparition des datasets.
Ensuite, le page load de ta master page est appellé une fois, mais à chaquie requete HTTP (html), c'est a dire à quand la page se recharge.
Les bonnes pratiques veulent, que tu ouvres ta connection et la ferme dans la meme fonction.
Si tu ne veux pas t"embeter, il faut utiliser les dataset et c'est eux qui ce charge des ouverture et fermeture des connexions.
Ensuite, il y a quelques cas, ou il faut le faire à la main (update et insert delete select complexe)
Une connexion doit durer le moins de temps possible, c'est une ressource et comme toute ressource c'est rare, Donc il faut les economiser.
Bon courage.
|
|
vendredi 16 février 2007 à 10:00:32 |
Re : Pb de connexion

blowlagoon
|
Merci pour ta reponse.... Normalement c'est la méthode que j'utilise dans le develeoppement Client/serveur...mais j'ai cru lir qques part qu'il faut laisser la conexion ouverte durant tte la session utilisateur. En suite sur mon page load de la page master je fais une verification sur le profil utilisateur pour lui donnée accès ou pas à l'application, donc je sui obligé d'ouvrir ma connexion sur la page_load de la master effectivement je la ferme pas mais c'est pa la la question c'est que je ne saisi pas pk le page_load est executé alors que je sollicite le TreeView_DataList_SelectedNodeChanged . Ensuite est ce que c'est mieux de mettre mes verifs profils user dans le glabal.asax, sachant que j'ai deja un web.config, est il possible d'avoir les deux dans la mm appli ou on peut mettre du code ds la web.config ce qui me semble pa possibl vu que c'est un fichier xml...enfin je pose des qustion pe etre bete mais je prefere bien comprendre le developpement web, car je suis adepte de travail propre.
Merci de votre aide.
|
|
vendredi 16 février 2007 à 12:05:03 |
Re : Pb de connexion

nhervagault
|
Salut,
web.config est un fichier de configuration.
global.asa est un fichier pour la gestion de l'application et des sessions.
Methode debut et fin application, session, et sur erreur.
Pour web.config que tu xml. --> changement à chaud de paramètrage.
Les deux sont faits pour fonctionner de concert.
TreeView_DataList_SelectedNodeChanged fait un postback et recosntruit tourte ta page, voila pourquoi ca passe dans le load.
Tu met un bouton sur ta page tu cliques dessus c'est le meme effet.
Esperant avoir eclaircit tes problèmes.
NB : Un clavier à une touche Entrée
|
|
vendredi 16 février 2007 à 12:20:49 |
Re : Pb de connexion

blowlagoon
|
Merci pour ta réponse. Mais honnetement je suis perdu je ne sais pa ou mettre le code suivant : Pour le moment est sur ma page master d'ou mes erreur au chargement. sachant que ds ce code je fais à la fois une connexion à la base pour recupèrer le profil user afin de personaliser les accèssur ma page master. ProtectedSub Page_Load(ByVal sender AsObject, ByVal e As System.EventArgs) HandlesMe.LoadDim IDSlash AsInteger = 0Dim IDPTVirg AsInteger = 0Dim dbCnx AsNew SqlConnectionDim dbCmd AsNew SqlCommandDim Fct AsNew FonctionsIfMy.User.IsAuthenticated = TrueThen' Se connecter à la base DataListdbCnx = New SqlConnection(ConfigurationManager.ConnectionStrings("DataListConnectionString").ConnectionString)dbCnx.Open() ' Tester l'accessibilité de la base DataListSelectCase dbCnx.StateCase Data.ConnectionState.BrokenMsgBox( "La base DataList est cassée.Contactez votre DBA!!", MsgBoxStyle.Critical, "DataList Inaccessible")Me.lbl_Binevenue.Text = "DataList Inaccessible."Me.lbl_Binevenue.Font.Size = FontUnit.LargeMe.lbl_Binevenue.Visible = TrueExitSubCase Data.ConnectionState.ClosedMsgBox( "La base DataList est fermée.Contactez votre DBA!!", MsgBoxStyle.Critical, "DataList Inaccessible")Me.lbl_Binevenue.Text = "DataList Inaccessible."Me.lbl_Binevenue.Font.Size = FontUnit.LargeMe.lbl_Binevenue.Visible = TrueExitSubEndSelect ' Récupération du nom utilisateur Système.IDSlash = My.User.Name().IndexOf("\")' S'assurer que l'utilisateur est un profile admis à accèder à la Base DataListFct.RecupDataProcStockParam(dbCnx, "ADL_SEL_PROFIL_USER", My.User.Name().Substring(IDSlash + 1))If Fct.gsProfile <> "Utilisateur inexistant"ThenIDPTVirg = Fct.gsProfile.IndexOf( ";")Me.lbl_TitreApp.Text = ConfigurationManager.AppSettings("Titre_Principal")Me.lbl_Titre_Entite.Visible = TrueMe.lbl_Titre_Entite.Text = Fct.gsProfile.Substring(IDPTVirg + 1)Me.lbl_Binevenue.Text = "Session ouverte avec le compte : " + My.User.Name().Substring(IDSlash + 1)Me.lbl_Binevenue.Visible = TrueMe.TreeView_DataList.Visible = TrueMe.TreeView_DataList.CollapseAll()ElseMe.lbl_TitreApp.Text = "Application DataList"Me.lbl_Titre_Entite.Visible = FalseMe.lbl_Binevenue.Text = "Utilisateur non admis. Contactez l'administrateur pour qu'il vous crée."Me.lbl_Binevenue.Font.Size = FontUnit.MediumMe.lbl_Binevenue.Visible = TrueMe.TreeView_DataList.Visible = FalseExitSubEndIf' Fermer la connexiondbCnx.Close() dbCnx = NothingElseMe.lbl_Binevenue.Text = "Utilisateur non autorisé."Me.lbl_Binevenue.Font.Size = FontUnit.LargeMe.lbl_Binevenue.Visible = TrueEndIf'Initialisation de la date du jour pour affichage.Me.lbl_DtVal.Text = Date.Now.ToString("D")EndSub
|
|
Cette discussion est classée dans : page, code, connexion, load, master
Répondre à ce message
Sujets en rapport avec ce message
réutilisation de code dans chaque page [ par Run85 ]
Bonjour, je débute en .NET et j'ai une question sans doute très simple: je souhaite réutiliser du code dans chaque page. Je souhaite récupérer le résu
Pb de UserControl [ par blueangel ]
je suis entrain de créer un datagrid en code behind dans un UserControl.dans l'evenement Page_load du user Control j'ai ajouté cette ligne de code pu
Variable Session [ par ppmax ]
Bonjour, j'ai une petite question sur la variable Session:Comment fait-on pour savoir si une clé a déjà été rentrée, un truc du genre: if (
timer ajax dans page c# avec formulaire [ par yetidani ]
Bonjour,Je code un site en c#. Sur une de mes pages se trouve un composant constitué d'un formulaire (pour faire simple un textbox pour saisir) et un
INCLUDE [ par suzukMan ]
Boujour à tous,Voila ma question je voudrais utiliser un include pour faire une page concernant la connexion à la base pour eviter de l'écrire sur cha
probleme du page load [ par imad_lol ]
salut.je développe en ASP.net et je suis débutant.alors quand j'ajoute un boutton et j essaye d'executer ses instructions,le programme réexecute la pa
Accéder aux propriétés d'un master page dans un user control [ par vince233 ]
Bonjour,J'ai actuellement un masterPage : MasterPage.master et une page : Default.aspxDans le masterpage, j'ai un attribut public Master.Button1_Click
MasterPage & Web Form [ par Tuizi ]
Bonjour,Voila je voudrais mettre en place une master page.J'ajoute donc à mon projet une master page.Ensuite j'ajoute une Web Form ou je précise bien
champ inconnu dans code behind ? [ par ronando ]
Bonjour à tous, j'ai un problème tout simple mais que je comprend pas !Sur une page aspx je place des textbox mais je n'ai pas d'accès dans mon code b
champ inconnu dans code behind ? [ par ronando ]
Bonjour à tous, j'ai un problème en .net (webform) tout simple mais que je comprend pas !Sur une page aspx je place des textbox mais je n'ai pas d'acc
Livres en rapport
|
Derniers Blogs
TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 !TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 ! par ROMELARD Fabrice
Speakers: Fabrice Meillon et Stanislas Quastana Cette session est basée entièrement sur celle donnée lors de la BUILD cet hiver. Il n'y a pas d'ajout d'information en rapport avec cet évènement passé. Windows 8 Server sera intégralem...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice [HTML5] AUTOUR DU W3C : NOUVEAUX STANDARDS ET WEB MOBILE (LILLE)[HTML5] AUTOUR DU W3C : NOUVEAUX STANDARDS ET WEB MOBILE (LILLE) par Gio
Je m'y prends un peu tard je sais, mais bon je suis développeur web et donc hyper fainéant ! Toujours dans le cadre des technologies émergentes, ici HTML5, parce qu'on aime HTML5 chez Wyg , nous seront présent, le vieux ( Aurélien V.) et moi, pour pr...
Cliquez pour lire la suite de l'article par Gio [WP7] DYNAMICALLY CHANGE STARTUP PAGE[WP7] DYNAMICALLY CHANGE STARTUP PAGE par KooKiz
Let's say that you want to allow the user to customize the startup page of your application. You can easily change the startup page by editing the 'NavigationPage' attribute in the manifest file. But the manifest cannot be modified once the applicatio...
Cliquez pour lire la suite de l'article par KooKiz SESSION SILVERLIGHT 5 3D : SLIDES ET DEMOSSESSION SILVERLIGHT 5 3D : SLIDES ET DEMOS par Groc
Durant les techdays, j'ai eu le plaisir d'animer une session sur Silverlight 5 et la 3D avec Simon Ferquel. Comme promis, voici nos slides et mes démos (celles avec le viper BSG) ici et là. Pour mémoire, les démos utilisent toutes le viper BSG...
Cliquez pour lire la suite de l'article par Groc
Forum
RE : FORMULAIRERE : FORMULAIRE par ap24dp
Cliquez pour lire la suite par ap24dp RE : FORMULAIRERE : FORMULAIRE par Megafan
Cliquez pour lire la suite par Megafan
Logiciels
DocTranslate (V3.1.0.0)DOCTRANSLATE (V3.1.0.0)DocTranslate est un traducteur de document Microsoft Word, PowerPoint et Excel. Il permet d'autom... Cliquez pour télécharger DocTranslate Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System
|