なんか微妙に迷った。
◆結論
private static void Main()
{
var now = DateTimeOffset.Now;
Console.WriteLine(now);
Console.WriteLine(now - now.TimeOfDay);
}
TimeOfDayを除けばよろしい。
◆経緯
DateTimeOffsetがあって、それの0時が欲しいなと。start time of dayが欲しいなと。
Offset無しのDateTimeなら新しくDateTimeのインスタンス作り直してもいいんだけど、Offsetついてる。そこに触りたくない。作り直したくない。
Stack Overflow見たらなんか答えあるっしょと思ったが、良く分からんことをしている。
DateTimeOffsetのリファレンスをあたったところ、TimeOfDayというプロパティを発見した。その日の0時からのTimeSpanをくれるらしい。それでもって除算した。とれた。幸せ。
◆結論(2回目)
StartTimeOfDayっつープロパティ生やしてくれねぇかな。TimeOfDay引くんでもいいけど、コードが読みづらいわ。
あと、LINQでnullフィルターを提供してくれねぇか。null許容intの配列から非許容intの配列に変換するのに2メソッドかかってしまう。直観的じゃねぇし。
拡張メソッド書けって?それをお前どこに置くんだ。プロジェクトごとにUtilクラス作れってか?んなことするくらいならNuGetパッケージに固めるわ。
コメントを残す