问题
What is the maximum size a session variable can hold ? I am trying to store object in session variable, if object size is under 80 KB, then working fine and if the size is greater than 80 KB then on retrieval I am getting an exception.
How can I increase the session variable size?
This behaviour is on my production server, on the development machine I can store big objects like above 500 KB etc..
I am implementing something like... http://aspalliance.com/1221_CodeSnip_Uploading_Multiple_Files_At_Once.all
Here is my 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++;
}
Thanks
回答1:
Try to change requestLengthDiskThreshold to this:
<system.web>
<httpRuntime executionTimeout="90"
maxRequestLength="20000"
useFullyQualifiedRedirectUrl="false"
requestLengthDiskThreshold="8192"/>
</system.web>
回答2:
From what i can think of, storing files in a session variable is a bad choice! Instead you can think of putting them into a temp location and then when upload is clicked you can put the to the real storage. Later on you can clear off the temp storage.
来源:https://stackoverflow.com/questions/1755348/what-is-the-maximum-size-a-session-variable-can-hold