當然,Request.UserHostAddress
的方式很棒,不過在Application_Start()
的Request
對象還不存在。在Global.asax.cs中獲取客戶端IP地址 - 可以嗎?
我想首先通過他/她的IP猜測用戶的位置 - 只要一次 - 當他/她進入網站時,併爲他/她設置默認區域設置。然後我會在其他地方操縱它。
我認爲必須有Global.asax
其中Request
存在於它,但是我無法找到該事件被否決的事件......
事實上任何替代伎倆可以理解的......
更新:
事實上,我正在開發一個多語言網站和我用MaxMind GeoIP
通過IP來獲得用戶的國家。所以,我想找到一種方式,以便當用戶進入該網站時(僅且只有第一個請求),我檢索他/她的國家並將其存儲在Session或全局變量中。
我知道我可以通過Request.UserHostAddress
實現我的目標,並且我對它沒有任何問題 - 每個請求只有一行開銷對於這個小應用程序根本不是問題。
但是,我想知道是否可以設置該全局變量,只有且只有一次...!?!
我想爲每個訪問該網站的用戶只發一次事件,因此,爲用戶設置默認語言環境一次。那個事件是我需要的嗎??! – AminSaghi
不!每當用戶發送請求時,該事件就會觸發......! – AminSaghi
是的,沒有任何事件,每個用戶訪問只會觸發一次。例如,如果用戶已經訪問過您的網站,則應使用會話進行檢查。但會話在Application_BeginRequest中不可用。 – Dmytro