Oracle根据浏览器文化返回datetime格式

时间:2014-01-15 11:06:31

标签: c# oracle datetime globalization culture

Oracle根据客户端使用的浏览器文化返回日期时间格式。例如,在oracle中的sysdate上检索月份时,如果我的浏览器文化是en-US返回1月,如果tr-TR返回Ocak但我想要显示它只有土耳其语。我在我的代码上应用了一些更改,如下所示,但在某些情况下我收到错误。

DateTime.ParseExact("Ocak", "MMMM", CultureInfo.CurrentUICulture).ToString("MMMM", new CultureInfo("tr-TR"));

根据上面的示例,我可以得到错误。因为CultureInfo.CurrentUICulture和浏览器文化不一样。每个土耳其月份值不等于1月。

4 个答案:

答案 0 :(得分:2)

您可以查看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
{
     //
}

答案 1 :(得分:0)

在web.config中添加全球化标签

<globalization uiCulture="es" culture="es-MX" />

Read more here

答案 2 :(得分:0)

在Web.config中添加<globalization />标记。查看此LINK,这对您有帮助。

答案 3 :(得分:0)

TO_CHAR (sysdate, 'Month', 'NLS_DATE_LANGUAGE = TURKISH')

您可以在sql

中使用此代码