我将字符串转换为DateTime,并让字符串像这样传入:
string dateTimeBeforeDayTen = '2/05/2016';
string dateTimeBeforeAfterTen = '12/05/2016';
现在,如果我正在解析dateTimeBeforeAfterTen,我知道我可以使用:
DateTime myDateTime;
DateTime.TryParseExact(dateTimeBeforeAfterTen, "dd/MM/yyyy", CultureInfo.InvariantCulture, DateTimeStyles.None, out myDateTime);
但是如果我想解析它们中的任何一个,我该怎么做呢?我知道我可以:
DateTime myDateTime;
if(!DateTime.TryParseExact(dateTimeBeforeAfterTen, "dd/MM/yyyy", CultureInfo.InvariantCulture, DateTimeStyles.None, out myDateTime));
DateTime.TryParseExact(dateTimeBeforeAfterTen, "d/MM/yyyy", CultureInfo.InvariantCulture, DateTimeStyles.None, out myDateTime);
但是有没有更好的方法呢?我将DateTime格式存储在DB中,并希望将其保留为单个字符串。
一个"d"可以同时工作一天和两天。所以就用"d/MM/yyyy"吧。
格式字符串
" d "
月份的第几天,从1到31。
2009-06-01T13:45:30 -> 1
2009-06-15T13:45:30 -> 15
如此:
string dateTimeBeforeDayTen = "2/05/2016";
string dateTimeBeforeAfterTen = "12/05/2016";
DateTime myDateTime, myDateTime2;
DateTime.TryParseExact(dateTimeBeforeDayTen, "d/MM/yyyy", CultureInfo.InvariantCulture, DateTimeStyles.None, out myDateTime);
DateTime.TryParseExact(dateTimeBeforeAfterTen, "d/MM/yyyy", CultureInfo.InvariantCulture, DateTimeStyles.None, out myDateTime2);