Ask a questionAsk a question
 

AnswerSPUtility.SendEmail Function truncating htmlbody

  • Thursday, February 28, 2008 8:31 AMNitinGupta4u Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     

     

    Hi All,

     

    I am sending an email to my sharepoint portal user through SPUtility.SendEmail Function. Its working fine but when ever my message body exceeds 2048 characters it gets truncated by the function.

    Is there any maximum lenght for email message body?

    Please help...

     

     

    Nitin Gupta

Answers

  • Friday, February 29, 2008 2:04 PMToby Statham Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     Answer

    Hi Nitin,

     

    I would the use System.Net.Mail to send the email. The one provided in SPUtility is a little restrictive. You can use the OutboundMailSenderAddress property of SPWebApplication to get the SMTP address that the server is using.

     

    Cheers

     

All Replies

  • Friday, February 29, 2008 2:04 PMToby Statham Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     Answer

    Hi Nitin,

     

    I would the use System.Net.Mail to send the email. The one provided in SPUtility is a little restrictive. You can use the OutboundMailSenderAddress property of SPWebApplication to get the SMTP address that the server is using.

     

    Cheers

     

  • Sunday, February 08, 2009 9:36 AMSudheesh Warrier Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
    Have you got any other solution for this problem?

    I am also facing this issue, and unfortunatly i m not allowed to use "System.Net.Mail" this namespace in my org.
  • Monday, February 23, 2009 11:50 PMAnozireth Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     Proposed Answer
    I just ran into this issue as well, and discovered that SPUtility.SendEmail seems to cap the length of a single line.  I added newlines after each tag in the body of my email and it works like a charm.
  • Tuesday, December 15, 2009 11:08 AMAni Michal Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     
    Hi,

    I am facing same issue, can you please explain more about the new-line after each tag. This is "<BR>" html tag or something else?
  • Tuesday, December 15, 2009 12:36 PMGanesh Jat Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     

    By default, the message body cannot exceed 2048 characters. SendEMail will truncate all characters beyond 2048. The workaround is to ensure that no single line in your message body exceeds 2048 characters. Simply add newline characters (for <br> use &crlf or &amp;crlf) as needed to keep the lines under the 2048 character limit. 



    Thanks
    Ganesh Jat [My Blog | LinkedIn | Twitter ]
  • Wednesday, December 16, 2009 1:23 PMAni Michal Users MedalsUsers MedalsUsers MedalsUsers MedalsUsers Medals
     Has Code
    Hi,

    I get rid of above error. I am using stringbuilder for body string and I use the AppendLine() method after every two line. After that every thing is working fine. We can also use SMTPClient to send email. Code for SMTP is as follow:

     System.Net.Mail.MailMessage message = new System.Net.Mail.MailMessage();
                          message.From = new System.Net.Mail.MailAddress(list.ParentWeb.Site.WebApplication.OutboundMailSenderAddress);
                          message.To.Add(new System.Net.Mail.MailAddress(user.User.Email));
                          message.Subject = "email subject.";
                          message.Body = mailBody.ToString();
                          message.IsBodyHtml = true;
                          System.Net.Mail.SmtpClient smtpClient = new System.Net.Mail.SmtpClient(web.Site.WebApplication.OutboundMailServiceInstance.Server.Address);
                          smtpClient.UseDefaultCredentials = true;
                         smtpClient.Send(message);
                          smtpClient = null;
                          message.Dispose();
    
    I hope this will help someone.