/// <summary> /// 附件操作 /// </summary> /// <param name="httpFiles"></param> /// <param name="fileId"></param> /// <param name="isTrans">回复或转发</param> /// <returns></returns> static List <Attachment> GetAttachs(System.Web.HttpFileCollectionBase httpFiles, string fileId, bool isTrans) { var relativePath = ""; var path = Sys.SysConstPool.SaveAttachPath(ref relativePath); var root = Sys.SysConstPool.GetRoot; var list = new List <Attachment>(); if (isTrans && !fileId.IsNullOrEmpty()) { var ids = fileId.Split(',').Select(o => int.Parse(o)).ToList(); var attachs = AttachService.FindList(o => ids.Contains(o.Id)); foreach (var att in attachs) { var full = Path.Combine(root, att.SaveUrl); FileInfo file = new FileInfo(full); if (!file.Exists) { continue; } var destFileName = att.SaveUrl.Replace(file.Name, CommonRules.GUID + file.Extension); var destFile = Path.Combine(root, destFileName); var info = file.CopyTo(destFile); list.Add(new Attachment() { SourceClassify = 3, Title = att.Title, Size = att.Size, SaveUrl = destFileName }); } } for (int i = 0; i < httpFiles.Count; i++) { var file = httpFiles[i]; if (file.ContentLength <= 0) { continue; } var filename = CommonRules.GUID + Path.GetExtension(file.FileName); string fullname = path + filename; file.SaveAs(fullname); list.Add(new Attachment() { SourceClassify = 3, Title = Path.GetFileName(file.FileName), Size = file.ContentLength / 1024, SaveUrl = relativePath + filename }); } return(list); }