سلام
هنگام ویرایش در صورتی که تصویر تغییر ندم و عکس جدیدی انتخاب نکنم نام فایل بصورت null ذخیره می شود اما اگه تصویر تغییر بدم و تصویر جدیدی انتخاب کنم نام تصویر به درستی در دیتابیس ذخیره می شود.
چطور باید جلوی این کار بگیرم؟
قطعه کد استفاده شده در ویرایش
[HttpPost] [ValidateAntiForgeryToken] public ActionResult Edit([Bind(Include = "Page_ID,PageGroup_ID,Users_ID,Page_Title,Page_ShortDesc,Page_Text,Page_Visit,Page_ImageName,Page_ImageAdj,Page_Source,Page_Tags,Page_IsActive,Page_DateEnter")] Page page, HttpPostedFileBase imgUp) { if (ModelState.IsValid) { if (imgUp != null) { if (page.Page_ImageName != null) { System.IO.File.Delete(Server.MapPath("/assets/images/post/" + page.Page_ImageName)); } page.Page_ImageName = Guid.NewGuid().ToString() + Path.GetExtension(imgUp.FileName); imgUp.SaveAs(Server.MapPath("/assets/images/post/" + page.Page_ImageName)); } //db.Entry(page).State = EntityState.Modified; //db.SaveChanges(); page.Page_DateEnter = DateTime.Now; dbPage.Edit(page); dbPage.Save(); return RedirectToAction("Index"); } ViewBag.PageGroup_ID = new SelectList(db.PageGroups, "PageGroup_ID", "PageGroup_Title", page.PageGroup_ID); ViewBag.Users_ID = new SelectList(db.Userses, "Users_ID", "Users_UserName", page.Users_ID); return View(page); }
نام عکس را در hiddenfor در ویو نگهدارید که موقع بازگشت ارسال شود
استاد خیلی ممنون..مشکلم حل شد.
سپاس گذارم
هیچ کاربری تا کنون از این پست تشکر نکرده است
با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)