将SQL数据类型时间显示为标准时间

时间:2012-05-13 14:02:47

标签: asp.net asp.net-mvc asp.net-mvc-3

我的数据库将时间存储在SQL数据类型时间中。我在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>

感谢任何帮助。

3 个答案:

答案 0 :(得分: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>

<击>

答案 1 :(得分:0)

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

答案 2 :(得分:0)

想出来 - 你必须先把时间转换为字符串

@

  • @ Convert.ToDateTime(c.timeStart.ToString).ToShortTimeString - @ Convert.ToDateTime(c.timeEnd.ToString).ToShortTimeString - @ c.name