在电子邮件模板中呈现超链接

时间:2012-05-14 14:10:25

标签: asp.net .net vb.net

我正在尝试在电子邮件模板中呈现一个超链接,该超链接将发送给用户,如果用户点击该链接,它将指向一个唯一的网址。我在下面给出了编码,

email.AddMailmerge("RequestUrl", "<a href=" & ConfigurationManager.AppSettings("DomainName") & "/Requests/Requests.aspx?Company_ID=" & objCompany.IDHashed & ">Feedback Requests</a>")

我的问题是链接无法正确解析并将我带到正确的网址。我做错了什么?

它解析为:

C:\ Users \ Test \ Desktop \ localhost / Requests / Requests.aspx?Company_ID = KirprZ17bg5u5Qf1

3 个答案:

答案 0 :(得分:1)

确保您的Appsetting包含http://所以而不仅仅是

localhost 

它需要

http://localhost

答案 1 :(得分:0)

请务必使用引号格式化href。而不是依赖于app.config的值(返回C:\值),而是使用.NET方法获取当前域/ URL。

Dim target As String = _
     String.Format("<a href='{0}/Requests/Requests.aspx?Company_ID={1}'>Feedback Requests</a>",_
                    Request.Url.GetLeftPart(UriPartial.Authority),_
                    objCompany.IDHashed)

答案 2 :(得分:0)

Dim strRequestLink As String = System.Configuration.ConfigurationManager.AppSettings("DomainName") & "/Requests/Requests.aspx?Company_ID=" & Me.ID & "&key=" & Me.IDHashed
Dim strRequestUrl As String = "<a href=""http://" & strRequestLink & """>http://" & strRequestLink & "</a>"

我使用了上面的格式。