1

我的数据库将时间存储在 SQL DataType Time 中。我在 vb.net 中使用 mvc 3 并试图获得以标准格式 (AM/PM) 显示的时间。但是,我不断收到错误消息“无法将 'System.TimeSpan' 类型的对象转换为 'System.IConvertible' 类型。”

这是我正在使用的代码

<h4>Tuesday</h4>
<ul>
@For Each c As ClassSchedule In ViewBag.Tuesday

   @<li>@c.timeStart - @c.timeEnd - @c.name</li>

Next
</ul>

任何帮助表示赞赏。

4

3 回答 3

1

编辑:

@<li>
  @(new DateTime(c.timeStart.Ticks).ToString("hh:mm:ss tt")) - 
  @(new DateTime(c.timeEnd.Ticks).ToString("hh:mm:ss tt")) - @c.name
</li> 

错误发生是因为你减去了日期

 @<li>
   <span>@c.timeStart </span>- 
   <span>@c.timeEnd </span>- 
   <span>@c.name</span>
  </li>

于 2012-05-13T14:13:45.007 回答
0

Figured it out --- you have to convert the time into a string first

@

  • @Convert.ToDateTime(c.timeStart.ToString).ToShortTimeString - @Convert.ToDateTime(c.timeEnd.ToString).ToShortTimeString - @c.name
  • 于 2012-05-13T23:20:04.950 回答
    0

    您可以在 TimeSpan 上显式调用 ToString()。

    于 2012-05-13T14:15:40.927 回答