2つのDateTimeフィールドの違いを取得し、それをTimeSpan変数に格納します。次に、次のルールでTimeSpanを四捨五入する必要があります。
TimeSpanの分が30未満の場合、Minutes and Secondsをゼロに設定する必要があります
。TimeSpanの分が30以上の場合、時間は1ずつ増加し、MinutesandSecondsはゼロに設定する必要があります。
TimeSpanも負の値になる可能性があるため、その場合は符号を保持する必要があります。
TimeSpanが負の値でなければ、要件を達成できる可能性がありますが、コードを書いたのですが、コードがよりかさばるので、その非効率性には満足していません。
より簡単で効率的な方法を教えてください。
ありがとうございます。それでは、お元気で、
これは、TimeSpanが負の値でない場合に正常に機能する私のコードです。
TimeSpan time_span = endTime.Subtract(startTime);
TimeSpan time_span1;
if (time_span.Minutes >= 30)
{
time_span1 = new TimeSpan(time_span.Hours + 1, 0, 0);
}
else
{
time_span1 = new TimeSpan(time_span.Hours, 0, 0);
}
time_span1には結果が含まれます。