2012-05-14 56 views
-1

我想呈現將發送給用戶的電子郵件模板中的超鏈接,並且如果用戶單擊該鏈接,它將指向唯一的URL。我給了下面的代碼,在電子郵件模板中呈現超鏈接

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

我的問題是鏈接無法正確解析並帶我到正確的URL。我究竟做錯了什麼?

它解析爲:

C:\用戶\測試\桌面\本地主機/採購/ Requests.aspx COMPANY_ID = KirprZ17bg5u5Qf1

回答

1

確保您Appsetting包含HTTP://所以,而不只是

​​

它需要

http://localhost 
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) 
+0

轉到相同的錯誤鏈接。不解決。 – Joshua

+0

那麼你的'DomainName'的價值是什麼?本地主機爲 –

+0

。我們有兩個網站進行測試,這就是爲什麼我們使用appsettings – Joshua

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>" 

我使用上述格式。