C# MVC4-强制日期时间
是否可以强制DateTime对象使用不同的区域设置?我希望用UK DateTime填充DateTime对象,但格式为US 我尝试了以下方法:C# MVC4-强制日期时间,c#,asp.net-mvc-4,datetime,C#,Asp.net Mvc 4,Datetime,是否可以强制DateTime对象使用不同的区域设置?我希望用UK DateTime填充DateTime对象,但格式为US 我尝试了以下方法: DateTime ukDateTimeFormat = DateTime.Parse("10/26/2009 06:47", CultureInfo.GetCultureInfo("en-us")); DateTime usDateTimeFormat = DateTime.Parse("26/10/2009 06:47", CultureInfo.Get
DateTime ukDateTimeFormat = DateTime.Parse("10/26/2009 06:47", CultureInfo.GetCultureInfo("en-us"));
DateTime usDateTimeFormat = DateTime.Parse("26/10/2009 06:47", CultureInfo.GetCultureInfo("en-gb"));
string strDate = DateTime.Now.ToString(CultureInfo.InvariantCulture);
string[] dateString = strDate.Split('/');
DateTime enterDate = DateTime.Parse(dateString[0] + "/" + dateString[1] + "/" + dateString[2], CultureInfo.GetCultureInfo("en-us"));
什么都不管用,我总是以英国式的约会结束
任何帮助都将不胜感激:-)对象的
DateTime
没有这样的内部字符串格式-您的日期存储为日期,并在输出时格式化。您可以按照自己的意愿进行填充,但在输出时,您需要指定格式,例如:
string formattedDate = ukDateFormat.ToString("MM/dd/yyyy HH:mm");
您似乎混淆了表示日期时间的和格式化日期时间的
DateTime
不包含任何格式,它只表示实际时间。因此,有关美国/英国日期时间格式的问题毫无意义
如果要以不同的格式显示时间,那不是
日期时间
,而是字符串
。您可以使用DateTime.ToString(…)
的各种重载来实现字符串的不同格式。有一些内置格式,您可以指定区域设置。要设置区域设置的日期格式,请使用以下代码:
string formattedDate = ukDateFormat.ToString(System.Globalization.CultureInfo.CreateSpecificCulture("en-us"))
DateTime
s只需存储一个时间;他们没有格式的概念。它也没有任何区域性。第三方要求我们将DateTime对象传递给SOAP服务,并且必须将其格式化为US DateTime,我们不能传递字符串。这一要求毫无意义。DateTime可以有时区,不能有格式。@iggyweb-在对soap服务的调用(将传递XML)中,在某个点上这肯定是一个字符串…抱歉,我的意思是Web服务而不是SOAP服务。使用IFormatProvider
作为第二个参数,因为这可能会由于/
格式说明符而产生不同的结果。