更改datetime.now的格式
本文关键字:格式 now datetime 更改 | 更新日期: 2023-09-27 18:06:35
我想得到最后看到的用户,并将其保存到我的sql数据库在mvc5。我在控制器中看到的最后一个代码如下:
users.userlast=DateTime.Now;
并以这种格式保存到我的数据库"2015-08-06 12:12:13.443"。我想获得日期时间只格式日,月,年,小时和分钟。
我不能这样写,
var dateTime = DateTime.ParseExact("12/02/21 10:56:09", "yy/MM/dd HH:mm", CultureInfo.InvariantCulture);
var text = dateTime.ToString("MMM. dd, yyyy HH:mm");
它没有工作,因为我最后看到的列是一个日期时间类型而不是字符串。我该怎么办?
谢谢。
编辑:像whatsup应用程序,我想只看到小时和分钟,而不是秒最后一次看到。
您说您将存储为日期时间类型,在这种情况下,您不需要将字符串转换为日期时间。事实上,您不需要做任何解析。
当你查询数据库时,你应该得到一个DateTime,在这个DateTime上你可以调用ToString()。
获取日期时间的格式只有日,月,年,小时和分钟(没有秒,毫秒),创建一个新的datetime值之前保存:
var dt = DateTime.Now;
users.userlast = dt.Date.AddHours(dt.Hour).AddMinutes(dt.Minute);
您不必担心在数据库中保存的格式。当你想用你的特定格式表示它时,你可以相应地ToString它。
我想获得日期时间格式只有日,月,年,小时和分钟。
string text = dateTime.ToString("yyyy-MM-dd HH:mm",
CultureInfo.InvariantCulture);
CultureInfo。InvariantCulture用于使用指定的区域性,而不管用户当前的区域性。
您可以使用InvariantCulture,因为您的用户必须在使用点而不是冒号的区域性中:
DateTime.ToString("yyyy-MM-dd HH:mm", CultureInfo.InvariantCulture);
就这样做
var formattedDateTime = yourLastSeenDateTime.ToString("MMM. dd, yyyy HH:mm", CultureInfo.InvariantCulture);
编辑:试试你在评论中提到的
DateTime dbDate = yourLastSeenDateTime;
DateTime newDateTime = new DateTime(dbDate.Year, dbDate.Month, dbDate.Day, dbDate.Hour, dbDate.Minute, 0);