C# 时间跨度没有出现
我似乎无法让我的代码计算两个datetime字段之间的分钟数:C# 时间跨度没有出现,c#,winforms,timespan,C#,Winforms,Timespan,我似乎无法让我的代码计算两个datetime字段之间的分钟数: private void button4_Click(object sender, EventArgs e) { string startTime = "5/1/2008 1:00:00 PM"; string endTime = "5/1/2008 3:00:00 PM"; DateTime startTimeParse = DateTime.Parse(startTime, Cultu
private void button4_Click(object sender, EventArgs e)
{
string startTime = "5/1/2008 1:00:00 PM";
string endTime = "5/1/2008 3:00:00 PM";
DateTime startTimeParse =
DateTime.Parse(startTime, CultureInfo.InvariantCulture);
DateTime endTimeParse =
DateTime.Parse(endTime, CultureInfo.InvariantCulture);
MessageBox.Show(startTime);
MessageBox.Show(endTime);
TimeSpan result = endTimeParse - startTimeParse;
int hours = result.Hours;
int minutes = result.Minutes;
}
在调试中,结果仅为00:00:00
如果您能告诉我如何使用MessageBox.show the different in mins?根据您上次的评论,请尝试:
MessageBox.Show(result.TotalMinutes.ToString())
两个
DateTime
值之间的数学运算将生成一个TimeSpan
值。所以你可以这样做:
(endTimeParse - startTimeParse).TotalMinutes;
“结果”是什么意思?在上面的例子中,
hours
和minutes
的值是多少?我没有发现任何错误<代码>小时将为2,分钟
将为0
。结果应为22.5分钟,在提供的开始和结束时间内,应将小时
设置为2,分钟
设置为0。结果应该是02:00:00
@PriceCheapertonresult
是一个TimeSpan
。你认为应该是22.5分钟,我同意。分钟数将为0,因为它是两小时零分钟。总分钟数不做任何算术运算。