質問

最終結果は、ユーザーに開始時間と終了時間の間の期間を表示する必要があります(例:午前6時30分に開始し、午後18時30分に終了すると、表示される結果は12時間です)。

今、私はしなければなりません DateTime パラメーター;それぞれから時間とtotime DateTime パラメーターには24時間形式で1時間があり、30分の分値もある場合があります。

私が喜んでやろうとしているのは、それらの間で期間を取得することです DateTime パラメーター。この方法を使用しました。

Public TimeSpan GetHourSpan(DateTime fromTime, DateTime toTime)
{
    TimeSpan fromH = TimeSpan.FromHours(fromTime.Hour);
       TimeSpan toH = TimeSpan.FromHours(toTime.Hour);
       TimeSpan hourTotalSpan = toH.Subtract(fromH);
    return hourTotalSpan;
}

これは素晴らしいことです、私の問題は、ある場合に数分で時間範囲を取得し、最終的にそれを追加することです TimeSpan 表示するオブジェクト。

両方が上記の方法で30分の時間スパンを持っている場合、0が戻り、MINプロパティに値がある場合はすべてのパラメーターを確認する必要があります。

時間と分を一緒に時間をとる簡単な方法はありませんか?

役に立ちましたか?

解決

TimeSpan span = toTime - fromTime;
// Split into hours:minutes: span.Hours, span.Minutes
// Total span in hours: span.TotalHours
// Total span in minutes (hours * 60): span.TotalMinutes

他のヒント

あなたがductuctを控除する場合 DateTime から DateTime, 、結果はAAです TimeSpan. 。だからあなたは単に取ることができます

TimeSpan result = toTime-fromTime;
int hours = result.Hours;
int minutes = result.Minutes;
TimeSpan span = toTime - fromTime;
public double DurationinMins(DateTime startDt, DateTime endDt)
    {
        var ts = endDt.Subtract(startDt);
        return ts.TotalMinutes;
    }
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top