Den metoden verkar inte vara så mycket fel på, frågan är vad som händer när pdf'n skapas eller hämtas?
Hej
Ibland så fungerar inte det pdf dokument som ska bifogas ett mail. Det kommer fram en pdf men den är korrupt och på endast 60 byte.
Kör följande kod
public static bool SendMail(string from, string to, string subject, string body, Stream attachment, string filename)
{
try
{
MailMessage mail = new MailMessage(from, to);
Attachment attachm = new Attachment(attachment, filename);
if (filename.Contains(".pdf"))
{
attachm.ContentType = new System.Net.Mime.ContentType("application/pdf");
//attachm.TransferEncoding = System.Net.Mime.TransferEncoding.
}
mail.Attachments.Add(attachm);
mail.Body = body;
mail.IsBodyHtml = false;
mail.Subject = subject;
SmtpClient smtp = new SmtpClient();
if (ConfigurationManager.AppSettings["SendUsingPickUpFolder"].ToLower() == "true" && Functions.FixIntZero(HttpContext.Current.Request.ServerVariables["SERVER_PORT"]) < 1000)
{
smtp.PickupDirectoryLocation = ConfigurationManager.AppSettings["PickUpFolder"].ToString();
smtp.DeliveryMethod = SmtpDeliveryMethod.SpecifiedPickupDirectory;
}
else
{
smtp.UseDefaultCredentials = false;
smtp.Host = ConfigurationManager.AppSettings["SMTPServer"].ToString();
smtp.EnableSsl = false;
smtp.Credentials = new System.Net.NetworkCredential(ConfigurationManager.AppSettings["SMTPUsernamer"].ToString(), ConfigurationManager.AppSettings["SMTPPassword"].ToString());
smtp.Port = Functions.FixIntZero(ConfigurationManager.AppSettings["SMTPPort"].ToString());
smtp.Timeout = 90;
}
smtp.Send(mail);
}
catch
{
return false;
}
return true;
}
