سلام
من کلاسهای زیر را نوشته ام
public class Brand { public Brand() { PicId=new Guid(); } [Key] public int BrandId { get; set; } [Display(Name = "تصوير", Prompt = "تست1", Description = "تست2")] [Column(TypeName = "image")] public byte[] BrandImage { get; set; } public Guid? PicId { get; set; } } public class Context:DbContext { public Context() { } public DbSet<Brand> Brands { get; set; } }
و کد کنترل مربوطه را هم بصورت زیر نوشته ام
[HttpPost] [ValidateAntiForgeryToken] public ActionResult Create( HttpPostedFileBase imFileBase) { if (ModelState.IsValid) { if (imFileBase != null) { var uploadFile = new byte[imFileBase.InputStream.Length]; imFileBase.InputStream.Read(uploadFile, 0, uploadFile.Length); var brand = new Brand { BrandImage = uploadFile }; db.Brands.Add(brand); db.SaveChanges(); return RedirectToAction("Index"); } } return View(); }
و کد view هم بصورت زیر است
@using (Html.BeginForm("Create", "Home", FormMethod.Post, new { enctype = "multipart/form-data" })) { @Html.AntiForgeryToken() <div class="col-md-12"> <div class="col-md-2"> <input type="file" name="Image" /> </div> <div class="col-md-3"> <input type="submit" value="ذخیره عکس" /> </div> </div> }
اما هنگام ثبت imFileBase را برابر null قرار میدهد
مشکل کد من کجاست ایا روش دیگری هم وجود دارد
این پست در تاریخ {{ dateString(new Date(post.deleteDate)) }} توسط {{ post.deletedByUser }} حذف شده است.
دلیل حذف: {{ post.deleteReason ?? 'نامشخص' }}
زمان پاسخ گویی روز های شنبه الی چهارشنبه ساعت 9 الی 18
فقط به موضوعات مربوط به محصولات آموزشی و فروش پاسخ داده می شود