2009-11-18 2 views
5

Quelle est la taille maximale qu'une variable de session peut contenir? J'essaie de stocker des objets dans une variable de session, si la taille de l'objet est inférieure à 80 Ko, puis fonctionne correctement et si la taille est supérieure à 80 Ko, je reçois une exception lors de la réitération.Quelle est la taille maximale qu'une variable de session peut contenir?

Comment puis-je augmenter la taille de la variable de session?

Ce comportement est sur mon serveur de production, sur la machine Developement je peux stocker de grands objets comme au-dessus de 500 KB etc ..

Je suis quelque chose comme ... La mise en œuvre http://aspalliance.com/1221_CodeSnip_Uploading_Multiple_Files_At_Once.all

ici est mon code. .

private static int count = 0; 
protected void Upload_Click(object sender, EventArgs e) 
{ 
    for (int loopCount = 0; loopCount < count; loopCount++) 
    { 
     HtmlInputFile hif = (HtmlInputFile)Session["myupload" + loopCount]; 
     String filePath = Server.MapPath("~/AdvImages/") + loopCount.ToString() + "_" + hif.PostedFile.FileName; 
     hif.PostedFile.SaveAs(filePath); 
     Session.Abandon(); 
    } 
} 
protected void btnAdd_Click1(object sender, EventArgs e) 
{ 
    Session["myupload" + count] = FileUpload1; 
    count++; 
} 

Merci

+2

Whast l'exception? – LiamB

+0

@Pina, En fait, je stocke l'objet fileupload et si la taille du fichier est supérieure à 80 Ko, je reçois une exception comme "Impossible d'accéder à un fichier fermé" –

+0

Quel mode d'état de session utilisez-vous? InProc? SQL? – RickNZ

Répondre

0

D'après ce que je peux penser, stocker des fichiers dans une variable de session est un mauvais choix! Au lieu de cela, vous pouvez penser à les mettre dans un emplacement temporaire, puis lorsque vous cliquez sur le téléchargement, vous pouvez mettre le dans le stockage réel. Plus tard, vous pouvez effacer le stockage temporaire.

Questions connexes