讓我給你一些背景。我有一個多語言網站和我的文化都存儲在數據庫中,並得到了一個屬性,它是public bool Active { get; set; }
避免讓這種文化檢查每一個電話?
如果你來到我的網站可以說在你的瀏覽器中的俄羅斯文化,不支持我的網站上所以我需要將文化設置爲「se」(或其他)。
如果你來到我的網站支持的文化,但它不活動我需要將其設置爲默認的一個「se」(或其他)。
現在我可以在我的override IHttpHandler GetHttpHandler
方法中檢查easy。事情是,我不想每次在網站上打電話時都打電話給數據庫。我的想法是,我做了一個會議[「firstvisit」],以減少檢查,但我有點不知道我該怎麼去,因爲我的情況說 not set to an instance of an object
在會議[「firstVisit」]線,所以我的問題是我如何處理這個?還有什麼其他選擇我可以去做這件事?
我的想法是這樣的
protected override IHttpHandler GetHttpHandler(System.Web.Routing.RequestContext requestContext)
{
String culture = requestContext.RouteData.Values["culture"].ToString();
if (HttpContext.Current.Session["firstVisit"].ToString() == string.Empty)
{
//do the check
}
var ci = new CultureInfo(culture);
Thread.CurrentThread.CurrentUICulture = ci;
Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture(ci.Name);
return base.GetHttpHandler(requestContext);
}
編輯
衛生署爲什麼我沒有想到的是,最後我只是做在protected void Application_Start()
檢查,以避免會議
感謝讓我在正確的軌道上,不知道爲什麼我沒有想到使用Application_Start() – 2011-02-04 06:05:28