gpt4 book ai didi

c# - 你如何处理本地化/CultureInfo

转载 作者:太空狗 更新时间:2023-10-29 22:56:20 25 4
gpt4 key购买 nike

一些方法,如 string.Format() 或 .Parse() 需要一个 IFormatProvider。如何提供?

  • 在封闭环境应用程序中(您知道永远不需要本地化),您是否只是跳过它并在没有 IFormatProvider 的情况下调用方法?

  • 在可能会本地化的应用程序中,您是否会考虑每个方法调用的正确值并将其设置在那里?那可能是“CultureInfo.CurrentCulture”或“CultureInfo.CurrentUiCulture”。

  • 或者您是否使用“MyUiCultureInfo”和“MyCultureInfo”等全局变量来通过更改它们的值来切换本地化?您如何以及在何处存储这些变量?

  • 我在开发库或框架时有什么需要考虑的——在这种情况下如何处理本地化?

最佳答案

我总是在我们的 (ASP.NET) 应用程序中将 CurrentThread.Current(Ui)Culture 设置为正确的值。这通常在每个请求开始时完成,基于用户的偏好或存储在配置文件中的默认值(如果用户未定义偏好)。

设置当前线程的这些属性后,您可以停止思考 - 数字、日期等将被正确格式化/解析,即使没有为这些方法提供 IFormatProvider。否则,您必须确保在各处传递正确的 IFormatProvider。

在图书馆的情况下,我认为它应该只依赖于这些事情的应用程序,而不应该担心这些事情。

关于c# - 你如何处理本地化/CultureInfo,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/920244/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com