I have an ASP.Net app that allows a user to write text into a Telerik RadEditor control and then send an email.
For some reason I'm sometimes getting strange characters showing up in the email that is generated.
For example if I put the word Test’s into the RadEditor box and send it... the email shows up with the text changed to: Test’s.
It seems as though the ’ character was used in place of ' because if I use the later, the text would show up just fine. If I pull up the saved record within the ASP.Net apps interface it looks just fine. It also appears just fine when I view the text within the recorded of the MS SQL table it was stored in.
I'm using MailMessage to create the email. I’ve check the string being sent at the point just before I use SmtpClient to send the message and it looks just fine at his point. Once the email message shows up however I get the strange text (Test’s).
I’m guessing that I have an encode/decoding issue but I’m not sure how I would go about fixing this.
Anyone have any ideas?
Thank you!.
Continued--->
I have tried to add it to the constructor of my email class with/without mybase but that had no effect.
Public Sub New(ByVal EmailDate As DateTime, ByVal LogoPath As String)
MyBase.New()
MyBase.BodyEncoding = Encoding.GetEncoding("iso-8859-1")
‘BodyEncoding = Encoding.GetEncoding("iso-8859-1")
Me.EmailDate = EmailDate
Me.LogoPath = LogoPath
End Sub
I also tried adding it to the code behind of the form that calls the email class just before I create a new SmtpClient but that did not seem to be correct either.
Try
returnEmail.BodyEncoding = Encoding.GetEncoding("iso-8859-1")
Dim smtpCli As New SmtpClient
smtpCli.Send(returnEmail)
Catch ex As Exception
ScriptManager.RegisterStartupScript(Me, Me.GetType, "smtpError", "alert('There was an error sending the email:\n* " & ex.Message & "');", True)
End Try