文件操作时 造成Session 丢失问题 该如何解决?
各位大哥。。在做图片上传时候我有段代码是对文件的操作的 如下:
// 临时Temp文件 移动NewsImages
string sourceFilePath = Server.MapPath("~/UploadFile/NewsImages/Temp/" + FileName);
if (System.IO.File.Exists(sourceFilePath))
{
string destFilePath = Server.MapPath("~/UploadFile/NewsImages/" + FileName);
System.IO.File.Move(sourceFilePath, destFilePath);
}
// 删除临时文件夹
if (System.IO.Directory.Exists(Server.MapPath("~/UploadFile/NewsImages/Temp/")))
{
System.IO.Directory.Delete(Server.MapPath("~/UploadFile/NewsImages/Temp/"), true);
}
#endregion
加这段代码造成Session 丢失 返回登录页面?我在配置有设置Session时间 这种文件操作造成丢失怎么解决?求救
------最佳解决方案--------------------
Session["Key"] = 1;
临时Temp文件 移动NewsImages string sourceFilePath = Server.MapPath("~/UploadFile/NewsImages/Temp/" + FileName); if (System.IO.File.Exists(sourceFilePath)) { string destFilePath = Server.MapPath("~/UploadFile/NewsImages/" + FileName); System.IO.File.Move(sourceFilePath, destFilePath); } // 删除临时文件夹 if (System.IO.Directory.Exists(Server.MapPath("~/UploadFile/NewsImages/Temp/"))) { System.IO.Directory.Delete(Server.MapPath("~/UploadFile/NewsImages/Temp/"), true); }
if(Session["Key"] == null)
{//没有值
Response.Write("Session丢失");
}
------其他解决方案--------------------不会丢失,代码是没有问题,你查度一下SESSION的三种保持机制,试试中间那一种可以让SESSION保持的好好的
------其他解决方案--------------------应该不会呀,你在这些代码前给session赋值然后在代码执行后判断下session的值是否还在,有可能问题不在这些代码这个位置
------其他解决方案--------------------我注释这段代码?上传图片 Session不会丢失。。。
------其他解决方案--------------------。。。我测试看看
------其他解决方案--------------------顶个
------其他解决方案--------------------我上面的代码也提示session丢失?
------其他解决方案--------------------不会丢失。。好像跟删除文件Session会丢失
------其他解决方案--------------------我知道原因了。。。。谢谢各位的回答: 配置文件改成这种就好了
<sessionState mode="StateServer"