DateTimeの罠

いきなりですが、下記コードを実行すると落ちます。

var unixTime = -2208988800000;
// 落ちる
var date = new DateTime(unixTime);

「1900/01/01 00:00:00」のunix timeからDateTimeを作成しようとしたコードです。
理由は「1970/01/01 00:00:00」以降のDateTimeしか作れないからです。
代わりにDateTimeOffsetを使うと上手くいきます。

var unixTime = -2208988800000;
var date = DateTimeOffset.FromUnixTimeMilliseconds(unixTime);