2009-11-18 10 views
5

Wie groß darf eine Sitzungsvariable maximal sein? Ich versuche, Objekt in Sitzungsvariable zu speichern, wenn Objektgröße unter 80 KB ist, dann funktioniert es gut, und wenn die Größe größer als 80 KB ist, dann erhalte ich bei Wiederholung eine Ausnahme.Wie groß darf eine Sitzungsvariable maximal sein?

Wie kann ich die Größe der Sitzungsvariablen erhöhen?

Dieses Verhalten ist auf meinem Produktions-Server, auf der Entwicklung Maschine, die ich große Objekte wie über 500 KB speichern etc ..

ich so etwas bin die Umsetzung ... http://aspalliance.com/1221_CodeSnip_Uploading_Multiple_Files_At_Once.all

hier ist mein 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++; 
} 

Dank

+2

Was ist die Ausnahme? – LiamB

+0

@Pina, Ich speichere fileupload Objekt und wenn die Dateigröße größer als 80 KB ist, erhalte ich eine Ausnahme wie "Kann nicht auf eine geschlossene Datei zugreifen" –

+0

Welchen Sitzungsmodus verwenden Sie? InProc? SQL? – RickNZ

Antwort

0

Von dem, was ich mir vorstellen kann, Dateien in einer Sitzungsvariablen speichern eine schlechte Wahl ist! Stattdessen können Sie daran denken, sie in einen temporären Speicherort zu verschieben und dann, wenn Sie auf den Upload klicken, können Sie den tatsächlichen Speicherort festlegen. Später können Sie den temporären Speicher löschen.

Verwandte Themen