我對遺留的asp.net webforms應用程序有一個非常奇怪的問題。 我正在開發一個非常簡單的用戶跟蹤方法,如果查詢字符串參數等於某個值,我需要在頁面加載中調用一個子例程。 例如:如果網頁直接通過URL訪問,則Page_Load不會執行(Default.aspx)
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If Request.QueryString("rf") = "dem" Then
TrackUser();
End If
End Sub
荒謬的是,如果我通過www.mydomain.com/Default.aspx?rf=dem,TrackUser()加載該網站被調用。 相反,如果我加載www.mydomain.com/?rf=dem,TrackUser()不會被調用。
我認爲這是有關查詢字符串的一個問題,所以我寫了類似:
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Response.Write("Test page_load")
If Request.QueryString("rf") = "dem" Then
TrackUser();
End If
End Sub
和「測試的Page_Load」如果我達到過www.mydomain.com的網站不寫。 怎麼回事?
如果您在'如果請求...'中設置了中斷點,那麼會發生什麼? – Win
'default.aspx'是你網站的默認頁面嗎? –