写真をデータベースにアップロードして挿入することはできますが、複数の写真をアップロードするときに問題が発生します。これは私のモデルクラスの製品です:
public int ID { get; set; }
public int ID_Category { get; set; }
public int ID_User { get; set; }
public string Name_Product { get; set; }
public Nullable<decimal> Price { get; set; }
public string Detail { get; set; }
public string Description { get; set; }
public Nullable<int> Reviews { get; set; }
public string imageUrl1 { get; set; }
public string imageUrl2 { get; set; }
public string imageUrl3 { get; set; }
public virtual Category Category { get; set; }
public virtual UserProfile UserProfile { get; set; }
そして、これは私のコントローラーです:
[HttpPost]
public ActionResult AddProdct(Product DataProduct)
{
int UserId = WebSecurity.GetUserId(User.Identity.Name);
// var r = new List<Product>();
var Data = db.Product.Add(DataProduct);
Data.ID_User = UserId;
Data.ID_Category = DataProduct.ID_Category;
Data.Name_Product = DataProduct.Name_Product;
foreach(string file in Request.Files)
{
HttpPostedFileBase hpf = Request.Files[file] as HttpPostedFileBase;
if (hpf.ContentLength == 0)
continue;
string saveFileName = Path.GetFileName(hpf.FileName);
string location = Path.Combine(Server.MapPath("~/Images/Product"+ @"\" + saveFileName.Replace('+', '_')));
Request.Files[file].SaveAs(location);
Data.imageUrl1 = saveFileName;
}
db.SaveChanges();
}
写真の URL を列 imageUrl1、imageUrl2、および imageUrl3 に保存したいと考えています。