0

が与えられた場合、が 15 から 19 の間などの数字の間にあるDateTimeかどうかを確認したいと思います。.Day

だから9/16/2013合格しますが、9/20/2013失敗します。

ありがとう、

4

6 に答える 6

10

含む

var date = DateTime.Now;
if (date.Day >= 15 && date.Day <= 19)
{
        return true;
}

除外

var date = DateTime.Now;
if (date.Day > 15 && date.Day < 19)
{
        return true;
}

どちらが正しいかは 100% わかりません ;)

于 2013-09-10T13:57:12.647 に答える
3

このようなものが動作するはずです:

var date = DateTime.Now;
return (date.Day >= 15 && date.Day <= 19);

これは単なる範囲であるため、より小さい演算子またはより大きい演算子を使用して比較できます。また、開始日または終了日を含めるために >= または <= 演算子を使用することもできます。

日付が範囲外になるには、述語が 1 つだけ真でなければならないという事実に基づく別のアプローチ:

var date = DateTime.Now;
return !(date.Day < 15 || date.Day > 19)
于 2013-09-10T13:58:20.970 に答える
2
if((DateTime.Today.Day >= 15) && (DateTime.Today.Day <= 19))
{
    //do something
}
else
    //do something else
}
于 2013-09-10T13:58:53.583 に答える
-1

日付 (日) が特定の数値の間にあるかどうかを適切にテストするには、日付全体を使用する必要があります。そうしないと、日付が月末に達すると数式が失敗します。

AddDate以下の例では、境界日付を大きくするためにを使用して、日数を加算 (または日数を減算) してマージンをチェックします。次に、現在の日付が境界の間にあるかどうかを確認します。

var now = DateTime.Now;
if(date.AddDays(-5) < now && now < date.AddDays(5))
{
   return true;
}
于 2013-09-10T13:58:46.897 に答える