Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/259.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 带翻译文本的独立错误页?_C#_Asp.net_Translation_Country Codes - Fatal编程技术网

C# 带翻译文本的独立错误页?

C# 带翻译文本的独立错误页?,c#,asp.net,translation,country-codes,C#,Asp.net,Translation,Country Codes,我正在开发一个将在国际上部署的网站。非常大的站点,但为了简单起见,我们只关心我的Error.aspx和c#代码。我想使这个自定义错误页面尽可能动态。我们现在至少需要用几种语言阅读本页,还有更多的语言需要阅读。此页面需要独立工作,无需参考数据库 我想有一些文本,并有适当的翻译出现的基础上的语言适合该领域。。。e、 g.“.com”=英语,.ca/fr”=法语,.mx”=西班牙语。。。你明白了 最好的方法是什么 我已经研究了API,但是合适的API有一个成本阈值,虽然它看起来非常有用,但这只是非常标

我正在开发一个将在国际上部署的网站。非常大的站点,但为了简单起见,我们只关心我的Error.aspx和c#代码。我想使这个自定义错误页面尽可能动态。我们现在至少需要用几种语言阅读本页,还有更多的语言需要阅读。此页面需要独立工作,无需参考数据库

我想有一些文本,并有适当的翻译出现的基础上的语言适合该领域。。。e、 g.“.com”=英语,.ca/fr”=法语,.mx”=西班牙语。。。你明白了

最好的方法是什么

我已经研究了API,但是合适的API有一个成本阈值,虽然它看起来非常有用,但这只是非常标准的错误消息文本,不太可能改变,所以使用动态转换器似乎有些过分。它可能有助于提高可伸缩性,但它是无限期的额外资金,因为在少数情况下,在我们添加另一种语言/国家/领域时,它只会节省vs硬编码

我的另一个想法是简单地在c#中硬编码。解析出Request.URL并获取域,然后生成一个不断增长的switch语句,该语句将分配适当的文本。(顺便说一句,我也在试图找到一种更好的方法来做到这一点,但是国家代码是不是可以从请求对象或服务器获得的信息?)这种方法是独立的、精确的,在具体层面上唯一的缺点是增加新语言或更改每个字符串的成本(至少一开始可能没有那么多)如果需要调整错误消息的内容。但这感觉像是一种糟糕的做法


我已经对此进行了一天的研究,但我还没有找到这两个选项的替代方案。在不使用CMS的情况下,处理少量文本进行翻译的最佳实践是什么?

有一种简单的内置方法来处理ASP.NET Web表单中的本地化。它使用客户端b中的语言首选项设置rowser选择语言。发布设置步骤是多余的,因为网上有很多关于此主题的信息

编辑:

阅读HTML资源文件可能是个好主意。这是处理不同语言的HTML标准(称为本地化)。这是ASP.NET在为服务器控件创建本地资源时在后台使用的。

伟大的资源,正是我所寻找的,我听到了本地化这个词,应该把这些点连接起来,谢谢!所以在这个过程中只是一个小问题-我刚刚被告知文化需要按域设置…我可以检索到它s、 我可以将其与页面当前加载的内容进行比较,如果它不同,我可以将CurrentThread.CurrentCulture设置为新值,但在重定向回同一页面时,区域性设置是浏览器最初表示的内容…有没有办法将其重新加载到不同的resx?