NodaTime を使い始めたばかりです。私のアプリでは、ユーザーがイベントを作成し、タイム ゾーンを選択します。BCL (Windows) のタイム ゾーン リストを使用するか、TZDB (Olson) のリストを使用するかに関係なく (それらを混在させないでください!)、後でタイム ゾーンを再作成できるように、タイム ゾーンの ID をデータベースに永続化する必要があります。 -意識時間。
タイムゾーン ID がやや恣意的で、ISO 標準ではないように見えることを考えると、今後 GetZoneOrNull を呼び出すときに常にその ID を見つけることに頼ることができますか?
GetZoneOrNull メソッドは、そのような事態に対する防御であると想定しています。つまり、独自の Ids コレクションに存在しない ID が渡された場合です。私の質問は、ID が Ids コレクションから取得された場合、GetZoneOrNull が今後 null を返さないことを信頼できますか?
しかし、ID が履歴から消える可能性がある場合、それに対処するための最善の戦略は何ですか?