2017-02-08 11 views
0

MACオペレーティングシステムで出荷を作成する際に問題が発生しています。 Windowsオペレーティングシステムでは、Webサイトは正常に動作します。どんな助けもありがたいですローカルコンピュータでタイムゾーンID 'CST'が見つかりません

ありがとうございます。

コード:

createOrUpdateShipment: function (shipmentHeader) { 


---------- 

     var tzm= (/\((.*)\)/.exec(new Date().toString())[1]); 
     return $http.post('/shipment/CreateOrUpdateShipment?tzm='+tzm, shipmentHeader) 
    }, 

そして、私は

エラーのタイムゾーンが見つからない入門MACオペレーティングシステムを使用して貨物を作成しようとすると、エラー以下コントローラー

public ActionResult CreateOrUpdateShipment(ShipmentInfo shipmentInfo, string tzm) 
    TimeZoneInfo tzi = TimeZoneInfo.FindSystemTimeZoneById(tzm); 
shipmentInfo.ServiceInfo.READYDATETYPE =  TimeZoneInfo.ConvertTime(shipmentInfo.ServiceInfo.READYDATETYPE,tzi); 

に私が取得しています例外。タイムゾーンID「CST」が見つかりませんでした.NETの


+3

言語とプラットフォームによって異なる名前のタイムゾーンに頼るのではなく、.NETで 'DateTimeOffset'を使用するか、ローカライズされた日付と時刻に対処するためにNodaTimeのようなパッケージを使用することを強くお勧めします。 –

+0

この質問は回答されましたか? –

答えて

1

タイムゾーンは、そのフルネームではなく、彼らの略語によって識別されます。 FindSystemTimeZoneByIdに電話しています。このAPIは"Central Standard Time"で、"CST"ではありません。

Macクライアントがtzm=CSTを送信していて、Windowsクライアントがtzm=Central+Standard+Timeを送信していると思います。あなたのサーバーは、クライアントがそれを綴るときにのみ動作します。

+1

タイムゾーンの略語の詳細については、http://stackoverflow.com/questions/15302083/timezone-abbreviationsを参照してください。 –

関連する問題