C# TimeSpan或DateTime(小时和分钟)作为参数解析为刻度
我有一个表单,它有两个时间输入:C# TimeSpan或DateTime(小时和分钟)作为参数解析为刻度,c#,html,asp.net,.net,date,C#,Html,Asp.net,.net,Date,我有一个表单,它有两个时间输入: 第一个表示小时,maxlength为3,只接受整数 秒表示分钟,maxlength为2,regex掩码的最大值为59 它用于注册用户在特定任务中工作的时间量。 例如,我工作100小时15分钟,我将在第一个输入中输入100 第二节是15节 在我的ActionResult中,timeHour和timeMinute以字符串形式出现 我想得到小时和分钟的总和,然后将其解析为滴答声 哪一个是最好使用的日期对象?您不能将三位数的小时解析为DateTime值。您可以将分钟
它用于注册用户在特定任务中工作的时间量。
例如,我工作100小时15分钟,我将在第一个输入中输入100
第二节是15节
在我的ActionResult中,timeHour和timeMinute以字符串形式出现
我想得到小时和分钟的总和,然后将其解析为滴答声
哪一个是最好使用的日期对象?您不能将三位数的小时解析为
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;
只需使用一个按钮。你不想约会
表示时间间隔
所以理论上你可以输入
999
hours?我认为你不想做Convert.ToDateTime
,我认为你想要一个int hour=Convert.ToInt32(dateTimeHour);int minute=…
然后avar time=new TimeSpan(0,hour,minute)
另外,new DateTime()对您意味着什么?是指1/1/0001吗?还是说现在是约会时间?还是别的什么?你现在错过了一个很大的上下文。仍然没有回答我的问题-你到底想完成什么…?@ASh:那么我们谈论的是一个时间跨度(TimeSpan
),而不是日历日期时间(DateTime
)。所以问题中的全部代码都是无效的。谢谢你的解决方案。但是在小时和分钟变量被解析为Int之前。感谢您的澄清。
var ticks = new TimeSpan(hours, minutes, 0).Ticks;