これに関してフォーラムに他の質問がありますが、これまでに有益な解決策が見つかりました。 私は定義されたコントローラを有する:ASP.NET MVCにExt.Netストアのポスト・アレイ
[HttpPost]
public ActionResult Update(int id, IList<MyObject> data)
{
return Json(new { success = false, message = "saved!" });
}
MyObject
の
A JSON配列はJsonStore内にあるとsubmitData()
関数呼び出し上に送信されます。私はすべてが正しく送信されていることを見ることができます、私が手動で行う場合、 "データ"パラメータはMyObjectの配列ですJSON.Deserialize<IList<MyObject>>(data)
私は正確に私が見ることができるヘッダーでデータが有効なJSON文字列であることを意味します。 "application/json"コンテンツタイプ。 私はすでにJsonValueProviderFactory
を使用していますが、それは役に立ちません。私の理解から、値プロバイダはIListに配列を簡単にマップする必要があるようですので、私が何か間違っているかどうか疑問に思っています。
ありがとう!
UPDATE 私は少し異なる使用シナリオを持っている1つのコメントで述べたように:私は実際にStore.submitData()の呼び出しによって、このデータを掲載しています...どうやら、ヘッダが類似しているにもかかわらず、店を提出しますそれは実際に文字列を生成するため動作しません。
ストアにJSON.stringifyのような何かをさせる方法に関する知識はありますか?
クール、それはまさに必要なものです。これはJsonValueProviderがなくても動作することに注意する必要があります。 私は実際にこのデータをAjaxリクエストではなくStore.submitData()コールを介してポストしています...明らかに、ヘッダーは似ていても、ストアの送信は実際には文字列。 ストアにJSON.stringifyのような何かをさせる方法を知っている人はいますか? – Tallmaris
@Tallmaris、JsonValueProviderはASP.NET MVC 3に組み込まれています。それが機能する理由です。カスタム値プロバイダを作成しないと、ASP.NET MVC 2ではこれが動作しません。 –