public static void SendMail(SmtpClient client, MailQueue mail) { var msg = new MailMessage { Subject = mail.Subject, From = new MailAddress(mail.FromEmail.Trim().ToLower(), mail.FromName.Trim()), IsBodyHtml = true, Body = mail.Content }; msg.To.Add(mail.ToEmail.Trim().ToLower()); if (!string.IsNullOrEmpty(mail.ReplyEmail.Trim().ToLower())) { msg.ReplyToList.Add(mail.ReplyEmail.Trim().ToLower()); } //msg.AlternateViews.Add(AlternateView.CreateAlternateViewFromString(mail.Content, null, "text/html")); msg.AlternateViews.Add(AlternateView.CreateAlternateViewFromString(ConvertToText(mail.Content), null, "text/plain")); if (!string.IsNullOrEmpty(mail.Attachment)) { var attachments = SendAttachment.Attachments(mail.Attachment); foreach (var attachment in attachments) { msg.Attachments.Add(attachment); } } client.Send(msg); }
/// <summary> /// Gets a weather forecast as an image /// </summary> /// <param name="location"></param> /// <returns></returns> public static Attachment GetWeatherForecast(LatLngLocation location) { #region PRECONDITION if (location == null) { throw new ArgumentNullException("location can not be null!"); } #endregion var attachment = new SendAttachment(); attachment.Name = "forecast.png"; var request = WebRequest.Create(string.Format(FORECAST_LARGE_REQUESTURI, location.Lat, location.Lng)); var result = request.GetResponseAsync().Result; var response = result.GetResponseStream(); using (var ms = new MemoryStream()) { response.CopyTo(ms); var imageData = ms.ToArray(); attachment.Content = imageData; } return(attachment); }