MS SQL ASP.NET日期以“错误的”文化格式显示

问题描述 投票:0回答:1

我在ASP.NET上使用MS SQL在美国的服务器上开发了一个应用程序。将应用程序部署到欧洲某处的服务器后,日期将以荷兰语格式显示。

美国申请显示:2018年3月6日 欧洲应用程序显示:maart 6,2018

美国Sql Server是2012年,欧洲SQL Server是2014年。

我已经比较了SQL Server设置,我只能找到一个区别......

美国SQL Server排序规则= SQL_Latin1_General_CP1251_CI_AS 欧洲SQL Server排序规则= SQL_Latin1_General_CP1_CI_AS

我不相信整理是问题因为我改变了我的美国服务器以匹配欧洲整理,并且日期格式没有变化。

在C#中我显示这样的日期......

Convert.ToDateTime(mySQLTable.Rows[0]["datecompleted"]).ToString("MMMM d, yyyy");

两个服务器上的“datecompleted”字段(DateTime)中的数据相同。 我比较了两个应用程序(查看源代码)的HTML源代码,它们是相同的。 我也看不出IIS的任何差异。

有什么想法,我应该看看为什么一台服务器用荷兰语和另一台用英语显示日期?

谢谢!

c# asp.net sql-server
1个回答
0
投票

感谢Mark Benningfield已经解决了......

我需要将InvariantCulture添加到我的C#中

using System.Globalization;
...
Convert.ToDateTime(mySQLTable.Rows[0]["datecompleted"]).ToString("MMMM d, yyyy", CultureInfo.InvariantCulture);

现在我的日期正确显示!

© www.soinside.com 2019 - 2024. All rights reserved.