我有一個c#程序,它通過郵件中的超鏈接發送郵件給客戶。郵件是從SQL Server存儲過程發送的。我的c#程序只是調用sp。 超鏈接在Outlook中正常工作,但在聯機gmail上它只顯示爲文本。它不可點擊。 我的郵件文本看起來像:郵件中的超鏈接沒有在Gmail中顯示,但它在Outlook中有。
Hi.
This is the hyperlink:<br>
<a href=\"serveraddress\Documents\\123_128635312685687531322.gif\">
Click Here</a><br><br>
我應該怎麼做來解決它?
編輯: 我的代碼:
string email = "[email protected];
string password = "MyPassword";
var credentials = new NetworkCredential(email, password);
var msg = new MailMessage();
var smtpClient = new SmtpClient("smtp.gmail.com", 587);
msg.From = new MailAddress(email, senderName);
msg.To.Add(new MailAddress(toAddress));
msg.Subject = subject;
msg.Body = message;
msg.IsBodyHtml = true;
smtpClient.EnableSsl = true;
smtpClient.UseDefaultCredentials = false;
smtpClient.Credentials = credentials;
smtpClient.Send(msg);
編輯2: 編譯消息被髮送:
string message = @"Hi. <br>
This is the intro line in the mail message.<br>";
using (DataTable dtLinks = data.ExecuteDataSet(@"SELECT *
FROM LessonFiles
WHERE Course = " + dr["Course"].ToString().DBValue() + @" AND
Lesson = " + dr["NextLesson"].ToString().DBValue()).Tables[0])
{
int i = 0;
foreach (DataRow drLink in dtLinks.Rows)
{
i += 1;
message += "<a href=\"" + drLink["Link"].ToString() + "\">" + drLink["Lesson"].ToString();
message += i == 1 ? "" : " file " + i;
message += "</a>" + "<br>";
}
}
message += "<br>Regards<br><br>";
設置屬性IsHtml = MailMessage對象中的true(默認爲false,這就是爲什麼gmail顯示文本消息的原因) – Uriil
有一個屬性IsBodyHtml已經設置爲true。我看不到一個IsHTML是c#。 –
問題推薦 –