public virtual ReturnInfo <bool> Upload(SimpleAttachmentInfo simpleAttachment) { ReturnInfo <bool> returnInfo = new ReturnInfo <bool>(); if (Request.Form.Files == null || Request.Form.Files.Count == 0) { returnInfo.SetFailureMsg("请至少上传一个文件"); return(returnInfo); } var comData = HttpContext.CreateCommonUseData(ComUseDataFactory, menuCode: "Attachment", functionCodes: FunCodeDefine.UPLOAD_CODE); var attachment = AutoMapperUtil.Mapper.Map <SimpleAttachmentInfo, AttachmentInfo>(simpleAttachment); BeforeUpload(returnInfo, attachment, comData); if (returnInfo.Failure()) { return(returnInfo); } IList <AttachmentInfo> attachments = new List <AttachmentInfo>(Request.Form.Files.Count); IList <Stream> streams = new List <Stream>(Request.Form.Files.Count); foreach (var file in Request.Form.Files) { attachment.FileName = file.FileName; attachments.Add(attachment.Clone() as AttachmentInfo); streams.Add(file.OpenReadStream()); } returnInfo = AttachmentService.Upload(attachments, streams, comData); if (returnInfo.Failure()) { return(returnInfo); } AfterUpload(returnInfo, attachments, comData); return(returnInfo); }
public virtual ReturnInfo <bool> Upload(SimpleAttachmentInfo simpleAttachment) { ReturnInfo <bool> returnInfo = new ReturnInfo <bool>(); if (Request.Form.Files == null || Request.Form.Files.Count == 0) { returnInfo.SetFailureMsg("请至少上传一个文件"); return(returnInfo); } var attachment = AutoMapperUtil.Mapper.Map <SimpleAttachmentInfo, AttachmentInfo>(simpleAttachment); BeforeUpload(returnInfo, attachment); if (returnInfo.Failure()) { return(returnInfo); } IList <AttachmentInfo> attachments = new List <AttachmentInfo>(Request.Form.Files.Count); IList <Stream> streams = new List <Stream>(Request.Form.Files.Count); foreach (var file in Request.Form.Files) { attachment.FileName = file.FileName; attachments.Add(attachment.Clone() as AttachmentInfo); streams.Add(file.OpenReadStream()); } returnInfo = AttachmentService.Upload(attachments, streams); if (returnInfo.Failure()) { return(returnInfo); } AfterUpload(returnInfo, attachments); return(returnInfo); }