json timespan オブジェクトを解析する方法を知っている人はいますか? UTC タイムスパンを自分のビューに戻し、それをローカル クライアント時間に変換したいのですが、その方法についての参照が見つかりませんでした。
私はmvcを使用しているので、このモデルを持っています:
public class TimeSpanModel
{
public TimeSpan StartTime { get; set; }
public TimeSpanModel()
{
this.StartTime = DateTime.UtcNow.TimeOfDay;
}
}
私のコントローラーでは、このモデルを次のようにビューに返します。
public ActionResult GetTimeSpanInfo()
{
TimeSpanModel tsm= new TimeSpanModel ();
return Json(tsm);
}
ビューから次のように呼び出しています。
$.ajax({
type: 'POST',
url: '@Url.Content("~/Controller/GetTimeSpanInfo")',
success: function (data) {
alert(data.StartTime);
var dt = new Date(data.StartTime);
alert(dt.toString());
}
});
しかし、最初のアラート ボックスには [object Object] しか表示されないため、タイムスパンを日付に変換しようとしましたが、2 番目のアラート ボックスでは無効な日付が表示されます。
タイムスパンを文字列に変換し、その文字列を必要のない奇妙な日付と連結して「有効な」日付を作成し、それを現地時間に変換して、そこから時間を抽出する必要がありますか? ?
または、TimeSpans を操作するためのより簡単でエレガントな方法、または datetime 値の時間部分のみを使用する方法はありますか?
助けてくれてありがとう。
PS ローカル時間に変換するためだけに UTCnow 時刻を取得するのはばかげているように思えるかもしれませんが、最終的にはこの UTC 時刻値を db テーブル (time(0) 型) から取得します。上記の方法は、データベースから値を取得してモデルに値を設定した後、この値を処理する方法をテストするための簡単な方法にすぎません。