我正在尝试将一些 DateTime 值转换为字符串格式yyyy-MM-dd
。问题是我只需要日期,但在我的情况下model.StartDate
包含日期和时间。当将 model.StartDate 声明为字符串“start”时,如下所示:4/1/2014 12:00:00 AM
. 尝试解析时出现此错误:
System.FormatException 未被用户代码处理 Message=String 未被识别为有效的 DateTime。
我最好的猜测是发生错误是因为字符串同时包含日期和时间,但我可能是错的。如果我进一步探索 model.StartDate,我还可以找到 Day、DayOfTheWeek 等。这是正确的方法吗?我只想model.StartDate
用 format 转换为字符串“start” yyyy-MM-dd
。
这是我的代码:
string start = model.StartDate.ToString();
model.StartDate = DateTime.ParseExact(start, "yyyy-MM-dd", CultureInfo.InvariantCulture);
string end = model.EndDate.ToString();
model.EndDate = DateTime.ParseExact(end, "yyyy-MM-dd", CultureInfo.InvariantCulture);
不知道问题是什么,可能是开始包含时间?我不知道。
model.StartDate 和 model.EndDate 是视图模型中的 DateTime 属性:
[NopResourceDisplayName("Admin.GAStatistics.GAStatistics.StartDate")]
[UIHint("DateNullable")]
public DateTime? StartDate { get; set; }
[NopResourceDisplayName("Admin.GAStatistics.GAStatistics.EndDate")]
[UIHint("DateNullable")]
public DateTime? EndDate { get; set; }
编辑:我在这里上传了一张图片,显示了我在调试器中得到的实际输出: https ://imageshack.com/i/1n51u2p
谢谢