剛好網友遇到這個問題,小喵寫了個小Function來提供轉換
緣起:
剛好網友遇到這個問題,小喵寫了個小Function來提供轉換
相對網址:
假設目前的路徑是http://www.dotblogs.com.tw/topcat,一般可能遇到的相對網址如以下的幾個
- 在本來路徑下,子目錄下的另外一個檔案,例如:xxx/test.aspx→http://www.dotblogs.com.tw/topcat/xxx/test.aspx
- 上層的相對路徑,例如:../xxx/test.aspx→http://www.dotblogs.com.tw/xxx/test.aspx
- 本專案下的相對路徑,例如~/xxx/test.aspx→http://www.dotblogs.com.tw/topcat/xxx/test.aspx
轉換的Function:
Private Function ChgFullUrl(ByVal p As String) As String
Dim s As String = ResolveUrl(p)
Dim ServerName As String = Request.ServerVariables("SERVER_NAME")
Return "http://" & ServerName & s
End Function
說明:
透過ResolveUrl將相對路徑轉換成真正的路徑,這部份一並解決上層路徑的【..】,相同專案內的【~】,與本來位置的相對子資料夾。
再補上【http://】,以及Server的網址名稱(Request.ServerVariables("SERVER_NAME")),就可以補全完整的路徑了。
以下是簽名:
- 歡迎轉貼本站的文章,不過請在貼文主旨上加上【轉貼】,並在文章中附上本篇的超連結與站名【topcat姍舞之間的極度凝聚】,感恩大家的配合。
- 小喵大部分的文章會以小喵熟悉的語言VB.NET撰寫,如果您需要C#的Code,也許您可以試著用線上的工具進行轉換,這裡提供幾個參考
Microsoft MVP Visual Studio and Development Technologies (2005~2019/6) | topcat Blog:http://www.dotblogs.com.tw/topcat |