1. ホーム
  2. c#

[解決済み] c# で前月の初日と最終日の日付を取得する

2022-04-26 01:45:01

質問

前月の初日と最終日を取得するような簡単な1~2ライナーが思いつきません。

アンケートのWebアプリをLINQ化しているのですが、新しい要件が押し込まれました。

アンケートには、前月のすべてのサービスリクエストを含める必要があります。 つまり、4月15日であれば、3月分のリクエストIDがすべて必要です。

var RequestIds = (from r in rdc.request 
                  where r.dteCreated >= LastMonthsFirstDate && 
                  r.dteCreated <= LastMonthsLastDate 
                  select r.intRequestId);

ただ、スイッチなしで簡単に日付が思い浮かばない。 私が盲目で、内部的な方法を見落としているのでなければ。

どのように解決するのか?

var today = DateTime.Today;
var month = new DateTime(today.Year, today.Month, 1);       
var first = month.AddMonths(-1);
var last = month.AddDays(-1);

本当に1行か2行で済むならインラインで。