1

a を JSON データに変換してlist<T>から、Jqgrid にバインドしようとしています。

問題は、リスト コレクションに DateTime として列の 1 つが含まれていることです。

結果の JSON 応答を見ると、日時が正しくシリアル化されていません。次のようになります。

 /Date(1267408935000)/

リスト コレクションに日時列が含まれている場合に、リスト コレクションを JSON データに適切に変換する方法。

助けてください..

4

3 に答える 3

5

formatter: "date"対応する列定義に使用するとcolModel、jqGrid は対応する変換を自動的に行います。この問題は、非常に古いバージョンの jqGrid を使用している場合にのみ発生する可能性があります (対応するサポートが jqGrid 3.8.2 から導入されたことを説明したドキュメントを参照してください)。

于 2013-10-15T09:31:16.363 に答える
2

「適切にシリアル化されていない」とあなたが言うとき、それは私には問題ないように見えます. これは JSON 日付の 1 つの形式でDate、「Unix エポックからのミリ秒数」をパラメーターとして取る Javascript コンストラクターに由来します。したがって、指定した値は、たとえば 2010 年 3 月 1 日 02:02:15 UTC です。

このデータをデシリアライズする Javascript は絶対に問題ないと思いますが、もちろん必ずしもそうであるとは限りません... 本当に問題が発生している場合は、JSON の日付/時刻形式に関する Scott Hanselman のブログ投稿をお読みください JSON フォーマッタをデフォルトで ISO-8601 フォーマットを使用するJson.NETに交換する方法。

于 2013-10-15T09:27:52.497 に答える
0

DateTimeの代わりにstringプロパティを持つクラスを作成します。

public class MyJsonModel
{
   public string DateTimeString { get;set; }
}

var model = new MyJsonModel();
model.DateTimeString = DateTime.Now.ToString("MM-dd-yyyy"); //Any format you like
于 2013-10-15T09:30:35.503 に答える