ASP.NET MVC 批量圖片上傳(縮圖)
阿新 • • 發佈:2019-01-28
HttpFileCollectionBase files = Request.Files;
//宣告一個string儲存圖片路徑
//StringBuilder imgs = new StringBuilder();
List<string> imgs = new List<string>();
for (int i = 0; i < files.Count; i++)
{
HttpPostedFileBase file = files[i];
if (file.ContentLength == 0)
{ model.HeaderThumbnail = null;
model.ProductThumbnail = null;
}
else
{
string name = file.FileName;
//獲取字尾名
string namejpg = Path.GetExtension(name).ToLower();
//對圖片格式的驗證
if (namejpg != ".jpg" && namejpg != ".png" && file.ContentLength > 0)
{
return Json(new { state = false, error = "圖片格式錯誤" });
}
//獲取上傳的路徑
string path = Server.MapPath("../upload/");
//生成一個新的檔名
string gid = System.Guid.NewGuid().ToString();
string newname = gid + namejpg;
//上傳
//縮圖
var thumbImage = new WebImage(file.InputStream);
thumbImage.Resize(80, 80);
if (i == 0)
{
thumbImage.Save(path + newname);
//file.SaveAs(path + newname);
model.HeaderThumbnail = newname;
}
//file.SaveAs(path + newname);
thumbImage.Save(path + newname);
imgs.Add(newname);
}
}
model.ProductThumbnail = string.Join(",", imgs.ToArray());
//初始化資料時間
model.AddTime = System.DateTime.Now;
//使用者是登陸的商家
model.UserID = CurrentUser.ID;
//狀態是上架一開始新增
model.State = 1;
//首次是不刪除
model.IsDelete = 1;
if (model.IsPackagemail==1)
{
model.Postage = null;
}
result = Bll.Add(model, out mgs);
}
if (!result)
{
return Json(new { state = false, error = "資料錯誤" });
}
return Json(new { state = result });
//宣告一個string儲存圖片路徑
//StringBuilder imgs = new StringBuilder();
List<string> imgs = new List<string>();
for (int i = 0; i < files.Count; i++)
{
HttpPostedFileBase file = files[i];
if (file.ContentLength == 0)
{ model.HeaderThumbnail = null;
model.ProductThumbnail = null;
}
else
{
string name = file.FileName;
//獲取字尾名
string namejpg = Path.GetExtension(name).ToLower();
//對圖片格式的驗證
if (namejpg != ".jpg" && namejpg != ".png" && file.ContentLength > 0)
{
return Json(new { state = false, error = "圖片格式錯誤" });
}
//獲取上傳的路徑
string path = Server.MapPath("../upload/");
//生成一個新的檔名
string gid = System.Guid.NewGuid().ToString();
string newname = gid + namejpg;
//上傳
//縮圖
var thumbImage = new WebImage(file.InputStream);
thumbImage.Resize(80, 80);
if (i == 0)
{
thumbImage.Save(path + newname);
//file.SaveAs(path + newname);
model.HeaderThumbnail = newname;
}
//file.SaveAs(path + newname);
thumbImage.Save(path + newname);
imgs.Add(newname);
}
}
model.ProductThumbnail = string.Join(",", imgs.ToArray());
//初始化資料時間
model.AddTime = System.DateTime.Now;
//使用者是登陸的商家
model.UserID = CurrentUser.ID;
//狀態是上架一開始新增
model.State = 1;
//首次是不刪除
model.IsDelete = 1;
if (model.IsPackagemail==1)
{
model.Postage = null;
}
result = Bll.Add(model, out mgs);
}
if (!result)
{
return Json(new { state = false, error = "資料錯誤" });
}
return Json(new { state = result });