2009-12-23 45 views
0

我想将我的网页翻译成7种不同的语言,我很好奇处理这个问题的最佳方法是什么?Classic-Asp的多语言支持

我知道这个主题打开了多次,但我没有得到一个合理的答案。 其实,所有的主题都是关于php和gettext的,但我使用的是经典的asp(vbscript)。

我现在使用的方法是:

我有en.asptr.asp包含

lang_home="Home Page"lang_home="Ana Sayfa"

,在我的网页,我展示他们像<%=lang_home%>。我不想使用大量的手镯,因为我相信他们放慢了我的网站。

埃文,我认为<%=GetTranslatedText(lang_home)%>

我需要知道的是,什么是多语言网站的ASP最好的办法,是有喜欢的gettext ASP的任何解决方案?

在此先感谢。

回答

1

只有两种方式来发送动态文本浏览器在ASP:

  1. 写整个HTML页面的Response.Write调用,否则静态HTML
  2. 嵌入式调用的Response.Write。

我认为你的方法是正确的,平衡需要快速查找和替换特定于语言的字符串的易于编辑的HTML代码。至少比一组SELECT CASE语句更快,或者查找一个Collection。

(如果性能是真的一个问题,为何不动到ASP.NET?)其他

一种选择是预编译你的ASP页面...保留的,比如说一个模板,“包含变量的default.asp.template“,单独的语言文件(比如你现在拥有的),以及每次更改模板时生成”default-en.asp“,”default-en.asp“等的代码。然后,将“default.asp”设置为根据用户语言简单且静默地将执行转移到正确的页面。

我用于预编译ASP页面的优秀(但是商业)应用程序是WebGecko APGen(http://www.webgecko.com/)。