public void ProcessRequest(HttpContext context) { int userId = 0; try { HttpFileCollection files = context.Request.Files; HttpPostedFile f = null; TemporaryAttachment ta = null; userId = int.Parse(context.Request["uid"]); for (int i = 0; i < files.Count; i++) { f = files[i]; ta = new TemporaryAttachment(); ta.FriendlyFileName = f.FileName; ta.AttachmentID = Guid.NewGuid(); ta.FileName = f.FileName; ta.DisplayOrder = 100; ta.AttachmentType = AttachmentType.ProductPhoto; ta.UserID = userId; TemporaryAttachments.Create(ta, f.InputStream); } } catch (Exception ex) { throw new Exception(ex.Message); } }
public static TemporaryAttachment PopulateTemporaryAttachmentFromIDataReader(IDataReader dr) { TemporaryAttachment temporaryAttachment = new TemporaryAttachment(); temporaryAttachment.AttachmentID = DataRecordHelper.GetGuid(dr, "AttachmentID"); temporaryAttachment.UserID = DataRecordHelper.GetInt32(dr, "UserID"); temporaryAttachment.AttachmentType = (AttachmentType)DataRecordHelper.GetInt32(dr, "AttachmentType"); temporaryAttachment.FileName = DataRecordHelper.GetString(dr, "FileName"); temporaryAttachment.FriendlyFileName = DataRecordHelper.GetString(dr, "FriendlyFileName"); temporaryAttachment.ContentType = DataRecordHelper.GetString(dr, "ContentType"); temporaryAttachment.ContentSize = DataRecordHelper.GetInt64(dr, "ContentSize"); temporaryAttachment.Height = DataRecordHelper.GetInt32(dr, "Height"); temporaryAttachment.Width = DataRecordHelper.GetInt32(dr, "Width"); temporaryAttachment.DisplayOrder = DataRecordHelper.GetInt32(dr, "DisplayOrder"); return(temporaryAttachment); }
public abstract void CreateUpdateTemporaryAttachment(TemporaryAttachment attachment, DataProviderAction action);
/// <summary> /// Forwards the email to the relay email address. /// </summary> /// <param name="mimeMessage">The MIME message.</param> public void ForwardEmail(MimeMessage mimeMessage) { Metadata metadata = MetadataFactory.GenerateFrom(mimeMessage); // Add tags to the subject string subject = mimeMessage.Subject; IEmailEntry emailEntry = emailEntryCache.Get(toCache.Get(mimeMessage)); if (!string.IsNullOrEmpty(emailEntry?.Tag)) { metadata.Tag = emailEntry.Tag; subject = $"[{emailEntry.Tag}] {subject}"; } Email email = new Email( new System.Net.Mail.MailAddress(_options.GetSender()), new System.Net.Mail.MailAddress(_options.RelayEmail)) { Subject = subject, }; foreach (MimeEntity mimeEntity in mimeMessage.BodyParts) { if (mimeEntity.IsAttachment) { if (!(mimeEntity is MimePart mimePart)) { continue; } Attachment temporaryAttachment; using (MemoryStream memoryStream = new MemoryStream()) { mimePart.Content.DecodeTo(memoryStream); memoryStream.Seek(0, SeekOrigin.Begin); temporaryAttachment = new TemporaryAttachment(memoryStream) { DisplayFileName = mimePart.FileName, ContentType = mimePart.ContentType.MimeType, Encoding = mimePart.ContentTransferEncoding.GetRaw(), }; } email.Attachments.Add(temporaryAttachment); } else if (mimeEntity is TextPart textPart) { string text = textPart.Text; if (textPart.ContentType.MimeType == Constants.TextMimeType) { text = MetadataSerializer.SerializeForText(metadata, text); } else if (textPart.ContentType.MimeType == Constants.HtmlMimeType) { text = MetadataSerializer.SerializeForHtml(metadata, text); } email.TextContents.Add( new Text() { RawText = text, MimeType = textPart.ContentType.MimeType, Charset = textPart.ContentType.Charset, }); } } _sender.SendEmail(email); emailEntryCache.Clear(); toCache.Clear(); }