C# 如何以30分钟为单位显示时间跨度
我希望以30分钟循环方式显示TimeSpan,并且仅以如下方式显示:C# 如何以30分钟为单位显示时间跨度,c#,timespan,C#,Timespan,我希望以30分钟循环方式显示TimeSpan,并且仅以如下方式显示: 00:00 00:30 01:00 01:30 这是我的代码: @{ TimeSpan StartTime=TimeSpan.FromHours(0); 00:00 对于(int i=0;i
00:00
00:30
01:00
01:30
这是我的代码:
@{
TimeSpan StartTime=TimeSpan.FromHours(0);
00:00
对于(int i=0;i<24;i++)
{
StartTime=StartTime.Add(新的时间跨度(00,30,0));
@开始时间
}
}
您可以通过ToString
为其指定格式:
<select class="form-control dropdown guestTitle">
@{
TimeSpan StartTime = TimeSpan.FromHours(0);
<option>00:00</option>
for (int i = 0; i < 48; i++)
{
StartTime = StartTime.Add(new TimeSpan(00,30,0));
<option>@StartTime.ToString("hh\\:mm")</option>
}
}
</select>
@{
TimeSpan StartTime=TimeSpan.FromHours(0);
00:00
对于(int i=0;i<48;i++)
{
StartTime=StartTime.Add(新的时间跨度(00,30,0));
@StartTime.ToString(“hh\\:mm”)
}
}
使用.ToString(“HH:mm”)
当我使用它时,给我错误的字符串格式。请看:也不是说TimeSpan是一个表示时间段的结构,而不是一个实际时间-因此小时将始终是0-23。@hashim:试试下面注释中给出的回答链接。@PaulF@“HH \:mm”这种格式有效,我需要小时数为0-23,现在显示0-12输入字符串的格式不正确。当我将.ToString(“HH:mm”)
放入时出现此错误,我想您会发现时间跨度的正确格式字符串为@“HH \:mm”-请参阅@AshkanMobayenKhiabani谢谢,这也是您的格式,我还需要小时数为0-23,现在显示0-12@hashim它是24小时制的。请注意,for循环每半小时重复24次,即12小时。如果你想要24小时,你应该让你的循环重复48次(i