【问题标题】:How to set DateFormat in mvc3 as "Jan/01/2012" in Controller not in Viewmodel如何在控制器中将 mvc3 中的 DateFormat 设置为“Jan/01/2012”而不在 Viewmodel 中
【发布时间】:2025-12-30 14:30:12
【问题描述】:

我的代码是:

DateTime fdate = DateTime.ParseExact(collection["txtToDate"], "MM/dd/yyyy", CultureInfo.InvariantCulture);
DateTime tdate = DateTime.ParseExact(collection["txtFromDate"], "MM/dd/yyyy", CultureInfo.InvariantCulture);


DateTime fromDate =Convert.ToDateTime( String.Format("{0:MMM/dd/yyyy}",fdate));
DateTime toDate = DateTime.Parse(String.Format("{0:MMM/dd/yyyy}", tdate));

但在此代码中,日期显示为“01/jan/2012”,我希望它们显示为“Jan/01/2012”

我该如何解决这个问题?

【问题讨论】:

  • 在什么代码中?您如何/在哪里显示此日期?
  • 我想在数据库中以这种格式显示日期...
  • 实际上我想显示总帐报告,我想以“Jan/01/2012”格式显示日期..
  • 您不会显示在数据库中。您将数据存储在其中。 generalledger report 是什么?您能否举例说明您是如何构建此报告的?
  • 如何将日期存储为格式“Jan/01/2012”。我可以以这种格式转换它...所以告诉我解决方案。

标签: javascript jquery asp.net-mvc-3 jquery-selectors c#-3.0


【解决方案1】:

要将DateTime 对象转换为像“Jan/01/2012”这样的字符串:

DateTime myDateTime = new DateTime(2012, 1, 1);
string formattedDateString = myDateTime.ToString("MMM/dd/yyyy");

要将格式为“Jan/01/2012”的字符串转换回DateTime 对象(例如,存储在您的数据库中):

DateTime myDateTime = DateTime.ParseExact(collection["txtToDate"], "MMM/dd/yyyy", CultureInfo.InvariantCulture);

【讨论】:

  • 我使用此代码但出现错误“字符串未被识别为有效的日期时间。”...
  • @LakhbirChandel:您没有提供足够的信息。如果那是您收到的错误,那么实际上该字符串不是此代码将解析的格式。我在此处列出的第二个代码将解析格式为“Jan/01/2012”的日期。它不会解析任何其他格式。如果您希望获得更多帮助,您需要更清楚地了解您正在尝试做什么。您尝试解析的文本到底是什么?
  • 非常感谢您先生...最后我在您的代码“ string formattedDateString = myDateTime.ToString("MMM/dd/yyyy"); "再次感谢.. .