我需要它以时间格式EX 0:00:00
返回方法/函数
public override DateTime OverallReadingTime()
{
return FinishTime.Subtract(StartTime);
}
我理解时间跨度,但想知道为什么这不起作用
答案 0 :(得分:3)
编译错误
您的代码无法编译,因为DateTime.Subtract(..)
函数返回TimeSpan
但您的函数需要DateTime
类型。
选项强>
TimeSpan
类型的新函数(见下文)。String
类型的新函数(另见下文)。TimeSpan选项
public TimeSpan OverallReadingTime()
{
return FinishTime.Subtract(StartTime);
}
字符串选项
public string OverallReadingTime()
{
return FinishTime.Subtract(StartTime).ToString();
}
答案 1 :(得分:1)
您可以在减去
后更改格式public override DateTime OverallReadingTime()
{
return Convert.ToDateTime(FinishTime.Subtract(StartTime).ToString("hh\:mm\:ss"));
}
答案 2 :(得分:0)
您应该提供有关问题的更多详细信息。但是,解决方案是使用覆盖的“ - ” - 运算符。
DateTime start = DateTime.Now;
DateTime end = start.AddHours(2);
Console.WriteLine((end - start));
制作02:00:00
,
这是您想要的输出?因此,将函数的返回变量更改为字符串return (FinishTime - StartTime).ToString();