JSONのプロパティ名のドットをキー値形式に逆シリアル化しようとしています。私はinbuilt ASP.NET MVCモデルバインディングを使用しています。これは、キー値オブジェクトの代わりにオブジェクトの表記法としてドットを解釈しているようです。ドットを無視してキー値として正しくデシリアライズする方法はありますか?この形式でデータを再度出力する必要があるため、これは重要です。すべてのプロパティ名のドットでJSONを逆シリアル化する
コントローラーアクション
[HttpPost]
public ActionResult SaveProgress(int id, ProgressVM data)
{
// ProgressVM Data property has an item with key "prop" and a null value, nothing else
}
ビューモデル
public class ProgressVM
{
public int ID { get; set; }
public Dictionary<string, string> Data { get; set; }
}
JSON例
{
"ID": 123,
"Data": {
"prop.0.name": "value",
"prop.0.id": "value",
"prop.1.name": "value",
"prop.2.name": "value",
"prop.3.name": "value"
}
}
だからどこに問題がありますか?データをckuent-serverまたはその逆に送信していますか? –
クライアントからサーバーへデータを送信し、アクションメソッドでデシリアライズします。 –
ドットの代わりにコンマ、ハイフン、またはセミコロンを使用するとどうなりますか? –