【问题标题】:I18n error messages in .NET.NET 中的 I18n 错误消息
【发布时间】:2009-06-11 08:49:31
【问题描述】:

我有一个与 AD 对话的 .NET 应用程序,以允许用户更改 AD 帐户的密码。这是一个国际使用的网络应用程序,我不能假设用户会说英语。

所以我需要将“密码不符合密码策略要求”之类的错误消息翻译成用户发送给网络服务器的任何文化。

  • 我可以使用任何内部翻译表,还是必须使用我自己的翻译表通过返回的错误代码手动翻译消息?
  • 有没有办法在该服务器上为所有支持的文化安装所有可能的资源文件 - 以便 new Win32Exception(errorcode).Message 产生正确的消息?

【问题讨论】:

    标签: .net internationalization


    【解决方案1】:

    您可以创建一个自定义错误页面,将您的网站重定向到您创建的页面:

    <customErrors defaultRedirect="http://hostName/applicationName/errorStatus.aspx" mode="On">
        <error statusCode="404" redirect="filenotfound.htm" />
    </customErrors>
    

    在您的 errorStatus.htm 中,您可以使用 .NET 的全球化功能将您的错误消息本地化为适当的语言和文化。

    【讨论】:

    • 嗯,我想我还不够清楚。它与 ASP.NET 类型方案中的一般错误处理无关。我问的是即使在安装了常规 Win2003 EN 的服务器上也打印波兰语相当于“密码不符合密码策略要求”。 .NET Framework 不会仍然默认为英语吗?
    • .NET 使用两个属性进行本地化:CurrentUICulture 和 CurrentCulture 如果您有适当的资源文件,.NET 将自动本地化为这些值。如果应用程序是 WinForms,这取决于 O/S 的文化设置,如果它是 WebForm 应用程序,这取决于浏览器选项中设置的文化设置。如果您需要更多信息,请提供有关应用程序上下文的更多信息,我会看看是否可以提供更多帮助
    猜你喜欢
    • 1970-01-01
    • 2011-03-26
    • 2016-03-27
    • 2012-10-13
    • 1970-01-01
    • 2011-08-17
    • 1970-01-01
    • 2019-10-01
    • 1970-01-01
    相关资源
    最近更新 更多