繁体   English   中英

获取Asp.net中两次之间的小时数

[英]Get the Number of Hours Between Two Times In Asp.net

我在.aspx中有一个3文本框。
1. txtStartTime
2.txtEndTime
3. txtNumberOfHours

我想在txtNumberOfHours中自动计算小时

这是我的代码:

TestNumOfHour.aspx

<asp:TextBox ID="txtStartTime" runat="server" ontextchanged="txtStartTime_TextChanged" AutoPostBack="true"></asp:TextBox>
<asp:TextBox ID="txtEndTime" runat="server" ontextchanged="txtEndTime_TextChanged" AutoPostBack="true"></asp:TextBox>
<asp:TextBox ID="txtNumberOfHours" runat="server"></asp:TextBox>

NumOfHour.aspx.cs

  protected void txtEndTime_TextChanged(object sender, EventArgs e)
    {
        txtNumberOfHours.Text = calculateTimeDiff(txtStartTime.Text, txtEndTime.Text).ToString();
    }
    protected void txtStartTime_TextChanged(object sender, EventArgs e)
    {
        txtNumberOfHours.Text = calculateTimeDiff(txtStartTime.Text, txtEndTime.Text).ToString();
    }

    private TimeSpan calculateTimeDiff(string t1, string t2)
    {
        TimeSpan ts = TimeSpan.Zero; 
        DateTime tt1, tt2;
        if (DateTime.TryParse(t1, out tt1) && DateTime.TryParse(t2, out tt2))
        {
            ts = tt2.Subtract(tt1);
        }
        return ts;
    }

我只希望小时数排除分钟和秒,但不知怎的,我得到了这个结果。

txtNumberOfHours中的结果:hr:分钟:秒

txtNumberOfHours.Text = (t2 - t1).TotalHours.ToString();

该声明返回的小时数。

尝试这个:

(DateTime.Parse(t2) - DateTime.Parse(t1)).TotalHours

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM