小时和分钟的TimeSpan或DateTime作为参数解析为Ticks
本文关键字:参数 Ticks DateTime 分钟 TimeSpan 小时 | 更新日期: 2023-09-27 18:13:15
我有一个表单,它有两个时间输入:
- First表示小时,maxlength为3,只接受整数。
- 秒代表分钟,maxlength为2,regex掩码为最大值59。
<input type="text" id="timeHour" name="timeHour" class="form-control" placeholder="000" maxlength="3" />
<input type="text" id="timeMinute" name="timeMinute" class="form-control" placeholder="00" maxlength="2" />
用于记录用户在某项任务中工作的时间。例如,我工作100小时15分钟,我会在第一个输入中输入100第二个是15。
在我的ActionResult timeHour和timminute是字符串。
我想要得到小时和分钟,然后将它们相加,然后解析为Ticks。
哪个是最好的日期对象?
使用TimeSpan。你不想要约会。
时间间隔。
var ticks = new TimeSpan(hours, minutes, 0).Ticks;
您无法将三位数小时解析为DateTime
值。您可以将分钟值解析为DateTime
,但对组件使用整数值更有意义:
int hour = Int32.Parse(dateTimeHour);
int minute = Int32.Parse(dateTimeMinute);
不能使用小时值创建DateTime
值,但可以先创建DateTime
值,然后再添加小时。例子:
DateTime d = new DateTime(1, 1, 1, 0, minute, 0).AddHours(hour);
编辑:如果你只想要刻度作为结果,你可以直接从小时和分钟计算出来:
long ticks = (hours * 60 + minutes) * 600000000L;