在c#中将十进制值转换为时间格式

D.M*_*D.M -1 c#

我目前正在从数据库中获取2个日期并找出它们之间的差异.我在视图页面中显示总和的值,但它当前显示为小数.例如,产生的值之一是1585.913,但我想用HH:MM:SS格式.

我当前显示小数值的代码如下所示.

调节器

public ActionResult Execution(int id = 0)
    {
        Execution execution = db.Executions.Find(id);

        if (execution == null)
        {
            return HttpNotFound();
        }

        ViewBag.ExecutionSeconds = (execution.End - execution.Start).TotalSeconds;

        return View(execution);

    }
Run Code Online (Sandbox Code Playgroud)

视图

@ViewBag.ExecutionSeconds
Run Code Online (Sandbox Code Playgroud)

我必须对此代码进行哪些更改才能以HH:MM:SS格式显示该值?

提前致谢.

Fab*_*jan 5

您可以使用.ToString()方法格式化您的TimeSpan.例如 :

(execution.End - execution.Start).ToString(@"dd\.hh\:mm\:ss");
Run Code Online (Sandbox Code Playgroud)

更多信息 :

https://msdn.microsoft.com/en-us/library/ee372287(v=vs.110).aspx