提问人:NateUser 提问时间:8/7/2023 更新时间:8/7/2023 访问量:30
将 GetDateTime 转换为 Time only 格式 [duplicate]
Convert GetDateTime to Time only format [duplicate]
问:
我正在创建一个事件 crud 应用程序,并尝试将事件的“时间”从我的数据库连接到我的代码。数据库格式的数据类型为 Time(7),asp.net 代码为 GetDateTime。我需要它采用 HH:mm 格式(而不是秒)。
我试过使用阅读器。GetDateTime,但它一直说指定的强制转换无效。下面是错误消息和代码。
System.InvalidCastException
HResult=0x80004002
Message=Specified cast is not valid.
Source=<Cannot evaluate the exception source>
StackTrace:
<Cannot evaluate the exception stack trace>
SqlDataReader reader = command.ExecuteReader();
if (reader.HasRows)
{
while (reader.Read())
{
// create a new event and add to list.
EventModel events = new EventModel();
events.Id = reader.GetInt32(0);
events.StartTime = reader.GetDateTime(1);
returnList.Add(events);
}
}
答: 暂无答案
评论
time
对应于 .NET Core 的 TimeOnly 类型或 .NET Framework 的 TimeSpan,而不是 .这与格式无关。DateTime 本身是一个二进制值,它没有格式。DateTime
timespan
events.StartTime = reader.GetTimeSpan(1);