在 C# 数据绑定类中将两个日期时间之间的差异转换为 HH:MM:SS 格式 asp.net

本文关键字:转换 HH 之间 asp 格式 SS MM net 时间 数据绑定 日期 | 更新日期: 2023-09-27 18:01:12

net 应用程序,我需要减去两个日期时间并以 HH:MM:SS 格式显示它们。我正在从映射类的数据库中获取这些内容,并尝试在那里减去并转换为字符串格式。我正在通过以下方式尝试

TimeTook = Convert.ToString(reader.GetDateTimeNullable("COMPLETED_DATE") - reader.GetDateTime("REQUEST_DATE"))

此语句用于映射函数,当我将其转换为字符串时,我得到的是 HH:MM:SS.ff 格式,但我想以 HH:MM:SS 格式获取它,因为我将其直接绑定到用户控件中的标签,如下所示

 <asp:Label ID="lblTimeTook" runat="server" Text='<%# Bind("TimeTook") %>'></asp:Label>

我想直接绑定两个日期之间的差异并以 HH:MM:SS 格式显示它们。

在 C# 数据绑定类中将两个日期时间之间的差异转换为 HH:MM:SS 格式 asp.net

去两个DateTime s 返回一个可以轻松格式化的TimeSpan

TimeTook = ( reader.GetDateTimeNullable("COMPLETED_DATE") -
             reader.GetDateTime("REQUEST_DATE")
           ).ToString(@"hh':mm':ss");
您可以使用

此逻辑(将 DateTime.Nows 替换为您的值(:

        var datetimediff = new DateTime((DateTime.Now.AddMinutes(1) -    DateTime.Now).Ticks);
        var TimeTook = datetimediff.ToString("HH:mm:ss");

试试这个

Convert.ToDateTime(reader.GetDateTimeNullable("COMPLETED_DATE") - reader.GetDateTime("REQUEST_DATE")).ToString("HH:mm:ss");