從您的帖子看來,您已經有辦法檢測用戶區域設置。所以我會假設你持有這些信息。
我們這樣做的方式是將用戶區域設置存儲在會話中,並將所有本地化資源存儲在相應的目錄名稱中。例如:
/
/images
sendButton.gif
background.gif
/de-de/
sendButton.gif
/fr-fr/
sendButton.gif
一個HttpHandler然後使用本地化目錄在默認目錄的頂部,基於當前用戶的語言環境映射。這允許將圖像無縫集成到所有代碼和css中,並且如果未找到本地化圖像,將使用基本目錄中的圖像。
如果需要更復雜的分類,那麼我會建議你的國家嵌入你的語言。像這樣:
/
/images
sendButton.gif
background.gif
/de
/de
sendButton.gif
/fr
sendButton.gif
/fr
/be
然後,您可以指定語言級別的資源。甚至讓你的http處理器映射文件以一種方式傳播,而不是傳播到樹上。因此,fr-fr資源將用於所有沒有這個名稱的資源的法國拼字國家。
當然在這一點上它確實變得相當複雜,尤其是當決定哪一個法語國家被用作法語的默認語言時(如果沒有指定的話)。你可能希望開始存儲某個地方的優先級,以便決定你所服務的地點。資源是否在樹上傳播。但作爲一個透明的結構來定位圖像,同時保持標籤和CSS清潔,這應該工作得很好。
謝謝 - 但基本上我的問題是編寫HttpHandler有多複雜? UI區域設置和目錄之間並不總是有1-1映射。需要有一個回退機制。例如,如果有FR-FR和法國比利時(FR-BE)即將到來 - 他應該去哪裏? – LeJeune 2008-11-25 13:05:04