MonoTouch 内のタイム ゾーンには複数のデータ ソースがあります。
1 つは .NET ベース クラス ライブラリ (BCL) からSystem.TimeZoneInfo
のもので、Microsoft .NET 実装との互換性 (データではなく構造) を意図しています。これには 2 つの欠点があります。
もう 1 つはMonoTouch.Foundation.NSTimeZone
、iOS API へのバインディングです。API は少し異なりますが、返されるデータは他の iOS アプリケーションが使用するものと一致し、更新されます (iOS の更新により)。
iPhone のタイム ゾーンを Web サービスに取得する最良の方法は何ですか?
上記の理由から、 IMOMonoTouch.Foundation.NSTimeZone
の方が適しています。
タイム ゾーンの差 (UTC +1) を転送するだけでは十分ではありません。これは、国固有の夏時間設定を考慮しないためです。
UTC へのオフセットについては、次の方法で夏時間固有のオフセット (秒単位) を取得できます。
var dlo = NSTimeZone.LocalTimeZone.DaylightSavingTimeOffset (NSDate.Now);