2012-08-15 71 views
4

我發送一些消息,如下面電子郵件:如何渲染字符串的HTML鏈接

string link = "http://localhost:1900/ResetPassword/?username=" + user.UserName + "&reset=" + HashResetParams(user.UserName, user.ProviderUserKey.ToString()); 
email.Body = link; 

該字符串被髮送至電子郵箱,但顯示爲字符串,而不是爲紐帶,我希望把它作爲鏈接點擊。

在錨標記
+3

您應該通過添加一個簽名的時間戳使鏈接過期。 – SLaks 2012-08-15 19:02:43

回答

5

試試這個

string link = String.Format("<a href=\"http://localhost:1900/ResetPassword/?username={0}&reset={1}\">Click here</a>", user.UserName, HashResetParams(user.UserName, user.ProviderUserKey.ToString())); 
4

link

string link = '<a href="http://......">Click here to reset your password</a>'; 

email.IsBodyHtml = true; 

或組合在一起使用字符串連接,並饋入email.Body。一個電子郵件正文是HTML,所以它不會是一個鏈接,除非你把它告訴它。此外,不要忘記告訴它是身體是HTML,就像我一直這樣做。

+0

並將IsBodyHtml設置爲true。 – 2012-08-15 19:06:59

+1

@MennovandenHeuvel我每次都忘記。 – 2012-08-15 19:07:48

2

使其與aHTML標記鏈接。而且不要忘記設置MailMessage爲HTML正文:

string link = "http://localhost:1900/ResetPassword/?username=" + user.UserName + "&reset=" + HashResetParams(user.UserName, user.ProviderUserKey.ToString()); 
email.Body = "<a href='" + link + "'>" + link + "</a>"; 
email.IsBodyHtml = true; 
2
string link = "<a href=http://localhost:1900/ResetPassword/?username=" + user.UserName + "&reset=" + HashResetParams(user.UserName, user.ProviderUserKey.ToString() + "> Link Text Here </a>"); 

它不知道它是一個鏈接:)

1

從純文本電子郵件正文更改爲HTML和生成使用<a>元素鏈接

string link = @"<a href="www.mylink.com">link</a>" 

email.IsBodyHtml = true; 
相關問題