正如标题所说,我正在从我的ASP.net网络应用程序发送电子邮件而没有任何附件(现在)但奇怪的是,电子邮件正在作为单独的HTML文件附加到空白电子邮件,就像我点击HTML文件它打开身体在单独的窗口中,我在身体中写的所有内容都作为独立的HTML文件,这只发生在我发送电子邮件到某些门户网站,如电子枪,但当我发送到gmail或hotmail地址,然后电子邮件完美没有附件和正文出现在应有的地方。
我的电子邮件地址是
public bool sendMail(string messageSubject, System.Net.Mail.MailAddress fromEmailAddress, System.Net.Mail.MailAddress toEmailAddress, string source_id, string messageText)
{
System.Net.Mail.MailMessage mail = new System.Net.Mail.MailMessage();
mail.IsBodyHtml = true;
mail.Subject = messageSubject;
mail.From = fromEmailAddress;
mail.To.Add(toEmailAddress);
mail.Body = messageText;
SmtpClient relayServer = new SmtpClient();
List<KeyValuePair<string, string>> commandParameters = new List<KeyValuePair<string,string>>();
commandParameters.Add(new KeyValuePair<string,string>("@source_id", source_id));
DataTable sourcesTable = SQLSelect("SELECT * FROM LogiCrmSources WHERE source_id = @source_id", commandParameters);
relayServer.Host = sourcesTable.Rows[0]["source_smtp"].ToString();
relayServer.Port = Convert.ToInt16(sourcesTable.Rows[0]["source_smtp_port"].ToString());
if (relayServer.Port == 25)
{
relayServer.EnableSsl = false;
}
else
{
relayServer.EnableSsl = true;
}
relayServer.Credentials = new System.Net.NetworkCredential(sourcesTable.Rows[0]["source_email"].ToString(), sourcesTable.Rows[0]["source_password"].ToString());
try
{
relayServer.Send(mail);
return true;
}
catch(SmtpFailedRecipientException exp)
{
return false;
}
}
答案 0 :(得分:1)
并非所有客户都能正确处理HTML电子邮件。例如,Gmail可以在您提及的门户网站中使用。在这些情况下,电子邮件的正文作为附件发送。