1. ホーム
  2. c#

[解決済み】指定したDateTimeオブジェクトを使用して、月の初日と最終日を取得する。

2022-04-01 22:36:42

質問

ある日付が属する月の初日と最終日を取得したい。日付は、UIフィールドの値から取得します。

タイムピッカーを使っている場合は、次のようになります。

var maxDay = dtpAttendance.MaxDate.Day;

しかし、私はDateTimeオブジェクトからそれを取得しようとしています。だから、もし私がこれを持っていたら...

DateTime dt = DateTime.today;

から月の初日と最終日を取得する方法。 dt ?

解決方法は?

DateTime 構造体は1つの値のみを格納し、値の範囲を指定することはできません。 MinValueMaxValue のインスタンスが取り得る値の範囲を保持する静的フィールドです。 DateTime 構造体です。これらのフィールドは静的なものであり、特定の DateTime . これらは DateTime 型そのものです。

お勧めの読み物 静的(C#リファレンス)

UPDATE: 月の範囲を取得します。

DateTime date = ...
var firstDayOfMonth = new DateTime(date.Year, date.Month, 1);
var lastDayOfMonth = firstDayOfMonth.AddMonths(1).AddDays(-1);