在我的网站中,我使用DateTime.TryParse()
来解析日期时间数据。我的问题是我不知道格式。例如,如果用户使用US格式,则格式为mm/dd/yyyy
,而用户使用UK格式,则使用dd/mm/yyyy
格式。
我认为格式是基于他们的电脑设置。那么,我如何使用他们计算机的格式来解析字符串呢?
尝试设置
<system.web>
<globalization culture="auto" />
<system.web>
在Web.Config
中,用CultureInfo.CurrentCulture
得到电流培养。
您也可以检查HttpContext.Request.UserLanguages
以获取有关客户端的其他信息
虽然Frank59的回答是一个很好的开始,但您不应该完全依赖它。MSDN文档特别指出:
完全依赖浏览器设置来确定页面的UI文化并不是最佳实践。用户经常使用未设置为其首选项的浏览器(例如,在网吧中)。您应该为用户提供一个方法来显式地为页面选择语言或语言和文化(CultureInfo名称)。
所以使用globalization culture="auto"
作为设置默认区域性的一种方式,但是为您的用户提供某种下拉列表来覆盖区域性设置。