从您的帖子看来,您已经有办法检测用户区域设置。所以我会假设你持有这些信息。
我们这样做的方式是将用户区域设置存储在会话中,并将所有本地化资源存储在相应的目录名称中。例如:
/
/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