我有一个上传图片的代码片段。上传时,它会将文件临时存储在 Session 中。然后单击“保存”,它将文件保存在数据库中。
我的机器上没有问题,但是在服务器上,每当我尝试上传一些文件,然后单击“保存”时,它都会显示错误“无法访问已关闭的文件”。在谷歌上搜索,我在这里读到这是由于上传了大文件。我想确认一下,是我上传大文件的问题吗?或者它可能是别的东西?另外,为什么我没有在我的机器上得到这个,而只在服务器上得到这个?
编辑:顺便说一句,错误出现在file size > 80kb
上传文件的代码:
public ActionResult StoreLogoInSession(HttpPostedFileBase file, int assetID)
{
string filename = null;
if (ValidateOnUpload(file))
{
Session.Add("TempLogo", file);
filename = file.FileName;
Session.Add("filename", filename);
}
return RedirectToAction("Edit", new { id = assetID });
}
保存代码(这是发生错误的时间):
public ActionResult SaveLogo(LogoModel m, int assetID)
{
HttpPostedFileBase file = (HttpPostedFileBase)Session["TempLogo"];
var logoModel = new LogoModel();
var asset = this.GenerateAssetForUploadFile(file, (int)m.Asset.AccountID, m.Asset.TextContents, m.Asset.AssetName);
this.LogoManagementFacade.SaveLogo(asset);
logoModel.Asset = asset;
this.LogoModelList.Add(logoModel);
}