public async Task <BaseResponse <bool> > AddMerchandise(AddMerchandiseRequestModel addMerchandiseRequestModel, string account) { string path = ""; try { if (addMerchandiseRequestModel == null) { throw new ArgumentNullException(nameof(addMerchandiseRequestModel)); } string guid = Guid.NewGuid().ToString(); var size = addMerchandiseRequestModel.MerchandisePhotos.Length; if (size > 0) { path = $@"{_folder}\{guid}.{addMerchandiseRequestModel.MerchandisePhotos.FileName.Split(".")[1]}"; using (var stream = new FileStream(path, FileMode.Create)) { await addMerchandiseRequestModel.MerchandisePhotos.CopyToAsync(stream).ConfigureAwait(false); } } var toBeAddItem = mapper.Map <AddMerchandiseRequestModel, Merchandise>(addMerchandiseRequestModel); toBeAddItem.MerchandiseId = guid; toBeAddItem.OwnerAccount = account; toBeAddItem.ImagePath = $"{guid}.{addMerchandiseRequestModel.MerchandisePhotos.FileName.Split(".")[1]}"; context.Merchandise.Add(toBeAddItem); if (addMerchandiseRequestModel.EnableSpec) { int specIndex = 1; var specs = addMerchandiseRequestModel.SpecList.Select(data => { var temp = mapper.Map <AddSpecModel, MerchandiseSpec>(data); temp.MerchandiseId = guid; temp.SpecId = specIndex++; return(temp); }); context.MerchandiseSpec.AddRange(specs); } context.SaveChanges(); return(new BaseResponse <bool>(true, "上傳成功", true)); } catch (Exception ex) { if (File.Exists(path)) { File.Delete(path); } return(new BaseResponse <bool>(false, "上傳失敗", false)); } }
public async Task <BaseResponse <bool> > AddMerchandise([FromForm] AddMerchandiseRequestModel addMerchandiseRequestModel) { string account = "tychang"; return(await merchandiseService.AddMerchandise(addMerchandiseRequestModel, account).ConfigureAwait(false)); }