Des choses pas possible de faire dans le Session_End du Global.asax ?

Résolu
cs_wally88 Messages postés 361 Date d'inscription jeudi 5 février 2004 Statut Membre Dernière intervention 1 octobre 2010 - 17 oct. 2008 à 09:38
cs_wally88 Messages postés 361 Date d'inscription jeudi 5 février 2004 Statut Membre Dernière intervention 1 octobre 2010 - 20 oct. 2008 à 10:19
Bonjour,

J'essaie de supprimer une ligne dans un fichier texte lors de la fermeture de session. et il va directement dans Application_Error quand je commence a vouloir lire le fichier.

Il passe bien le if(Session["login"] mais dès qu'il arrive a List... il se met en erreur.

Il y a des choses qu'on ne peu pas faire ? Mon code fonctionne dans une page .aspx normal donc sommes nous restreint ?

Merci.

CODE :

if (Session[
"login"] !=
null)
{

List<
String> lines =
File.ReadAllLines(
"txtchatpresent.txt").ToList();

5 réponses

jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
17 oct. 2008 à 17:37
Bonjour,

As tu lu le message d'erreur ? via Server.GetLastError() ?

Ce message t'indiqueras surement que le path est incorrect, en effet tu spécifie seulement le nom du fichier, .net va donc chercher le fichier dans Directory.GetCurrentDirectory() ce qui n'est pas l'idéal, essaye de mettre le path complet de ton fichier. De plus si tu manipule un fichier en ASP.net, n'oublie pas de gérer la synchro des threads.

<hr />Cyril - MVP ASP.net - MCPD ASP.net & MCTS SQL - Consultant indépendant
3
cs_wally88 Messages postés 361 Date d'inscription jeudi 5 février 2004 Statut Membre Dernière intervention 1 octobre 2010
20 oct. 2008 à 09:29
Bonjour,

Merci, c'étais bien ça :).
Pour la synchro de thread, je vais me renseigner.

Merci.
0
cs_wally88 Messages postés 361 Date d'inscription jeudi 5 février 2004 Statut Membre Dernière intervention 1 octobre 2010
20 oct. 2008 à 10:04
J'ajouterais l'utilisation de HttpRuntime.AppDomainAppPath+
"votre fichier"au lieu deServer.MapPath("") qui ne fonctionne pas dans le global.asax pour avoir le chemin de l'application.
0
jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
20 oct. 2008 à 10:10
Utilise Path.Combine, plutot que de la simple concatenation de String ...

<hr />Cyril - MVP ASP.net - MCPD ASP.net & MCTS SQL - Consultant indépendant
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_wally88 Messages postés 361 Date d'inscription jeudi 5 février 2004 Statut Membre Dernière intervention 1 octobre 2010
20 oct. 2008 à 10:19
Oki je modifie  Path.Combine(
HttpRuntime.AppDomainAppPath,
"votrefichier") 
    
Merci a toi.
0
Rejoignez-nous