0
مقدار دهی عکس در یک session
سلام
کد زیر را داریم
<div class="col-md-12">
<div class="col-md-2">
<input type="file" name="Image" id="imgInp" />
</div>
<div class="col-md-3">
<input type="submit" value="ذخیره عکس" />
</div>
<div>
<img id="blah" src="#" alt="your image" style="width: 100px; height: 100px;" />
</div>
</div>
و
public ActionResult Index(HttpPostedFileBase Image)
{
if (Image != null)
{
byte[] uploadFile = new byte[Image.InputStream.Length];
Image.InputStream.Read(uploadFile, 0, uploadFile.Length);
ImageDB ImageDB = new ImageDB()
{
Image = uploadFile,
};
db.ImageDB.Add(ImageDB);
db.SaveChanges();
}
return View();
}
حال می خواهم یک سشن داشته باشم که عکس را داخل ان قرار بدهم که اگر عملیات ثبت انجام نشد بکمک سشن عکس را دوباره در view مورد نظر نمایش بدهم
چه کدی باید بنویسم
باتشکر
1 پاسخ
0
سلام، وقت بخیر
ریختن محتویات فایل داخل Session باعث اشغال شدن بی دلیل حافظه میشه، پیشنهاد می کنم توی پوشه اصلی سایتتون یک پوشه با نام TempImages ایجاد کنید و تصاویر موقت رو داخل اون ذخیره کنید، بعد می تونید چک کنید که فایل تصویر موقت وجود داره یا خیر، اگر وجود داشت نمایش بدید. می تونید فایل رو با نام Session ذخیره کنید که بوسیله Session.Id قابل دسترس هست. تو متد Session__End هم می تونید فایل های ایجاد شده داخل TempImages رو حذف کنید. اما داخل خود Session ذخیره نکنید که حافظه بی دلیل اشغال نشه!