Hi,
I have just attempted to send an email containing an '€' character using System.Net.Mail and all went well. I didn't have to specify a globalization setting in the web.config file either.
Unfortunately, I was unable to download the ASP.NET started kit (http://www.asp.net/Downloads/starter-kits/), as the link is currently down. This is the code I usually use to send mail:
using System;
using System.Collections.Generic;
using System.Web;
using System.Net.Mail;
public class Emailer
{
public static bool Send(string fromAddress, string toAddress, string subject, string body, bool sendAsHTML)
{
try{
//Build message...
MailMessage msg = new MailMessage(fromAddress, toAddress, HttpUtility.HtmlEncode(subject), body);
//Send as HTML?
if (sendAsHTML)
msg.IsBodyHtml = true;
else
msg.IsBodyHtml = false;
//Send message...
SmtpClient mailObj = new SmtpClient();
mailObj.Send(msg);
return true;
}
catch
{
return false;
}
}
}
An example of a call to the above might be:
uxEmailSendResult.Text = Emailer.Send("\"Joe Blogs\" <joeblogs@yourdomain.com>",
"joeblogs@receipentdomain.com",
"Test Subject", "Body text goes here... €£$123.00", true).ToString();
I used an ASP Label control here just to display the result of the call to
'Emailer.Send(...)'. Note the format of the '
from' address. You could also have used '
ConfigurationManager.AppSettings', which reads 'name/value' pairs from the web.config file instead of hard coding, as I did with the from address in the above call to '
Emailer.Send(...)'.
Anyway, I wish I could help more.
Best of luck!