Oracle 根据浏览器文化返回日期时间格式
Posted
技术标签:
【中文标题】Oracle 根据浏览器文化返回日期时间格式【英文标题】:Oracle returns datetime format according by browser culture 【发布时间】:2014-01-15 11:06:31 【问题描述】:Oracle 根据客户端使用的浏览器文化返回日期时间格式。例如,在 oracle 中检索 sysdate 上的月份时,如果我的浏览器文化是 en-US 返回一月,如果 tr-TR 是返回 Ocak 但我想出现它只有土耳其语。我对我的代码进行了一些更改,如下所示,但在某些情况下我遇到了错误。
DateTime.ParseExact("Ocak", "MMMM", CultureInfo.CurrentUICulture).ToString("MMMM", new CultureInfo("tr-TR"));
我可以根据上面的示例得到错误。因为 CultureInfo.CurrentUICulture 和浏览器文化不一样。January 不等于每个土耳其月份的值。
【问题讨论】:
【参考方案1】:您可以检查您的CurrentUICulture
是InvariantCulture
(基于en-US
)还是不喜欢;
if(CultureInfo.CurrentUICulture == CultureInfo.InvariantCulture)
var month = DateTime.ParseExact("January", "MMMM", CultureInfo.InvariantCulture);
Console.WriteLine(month.ToString("MMMM", new CultureInfo("tr-TR"))); //ocak
else if(CultureInfo.CurrentUICulture == new CultureInfo("tr-TR"))
var month = DateTime.ParseExact("Ocak", "MMMM", new CultureInfo("tr-TR"));
Console.WriteLine(month); //ocak
else
//
【讨论】:
感谢我将在几分钟内尝试。您的解决方案似乎正确。【参考方案2】:在 web.config 中添加全球化标签
<globalization uiCulture="es" culture="es-MX" />
Read more here
【讨论】:
嗨 gokul 感谢您的回复。我在 web.config 文件中尝试了这个标签,但它不起作用。对于这种情况,我想在检索数据库时更改值。【参考方案3】:在 Web.config 中添加 <globalization />
标记。检查此LINK,这将对您有所帮助。
【讨论】:
【参考方案4】:TO_CHAR (sysdate, 'Month', 'NLS_DATE_LANGUAGE = TURKISH')
你可以在sql里面使用这段代码
【讨论】:
以上是关于Oracle 根据浏览器文化返回日期时间格式的主要内容,如果未能解决你的问题,请参考以下文章