動的な行と列を持つマトリックス タイプのフォームを作成しました。セルには、C# (MVC4、ASP.NET 4) で処理する必要がある入力フィールドが含まれています。フォームは次のようになります (簡略化)。
<form action="~/Administration/PriceMatrix" method="post">
<input type="text" name="Prices[1][0][1]" value="15.00" />
<input type="text" name="Prices[1][0][2]" value="12.50" />
<input type="text" name="Prices[1][1][1]" value="10.00" />
<input type="text" name="Prices[1][1][2]" value="7.50" />
</form>
一致するコントローラーはまだ空です:
[HttpPost]
public ActionResult PriceMatrix(object form)
{
}
私が使用するRequest.Form
と、もちろんすべての値にアクセスできますが、それらは配列に (逆) シリアル化されません。だから私はこれを行うことはできません:Request.Form["Prices"][0]
またはそのようなこと。代わりに、フルネームRequest.Form["Prices[1][0][1]"]
(=15.00) を使用してのみアクセスできます。もちろん、配列をループしKey
て各値を分割することもできますが、別の方法で行いたいと思います。object form
リストなどを含む別のタイプまたはカスタムオブジェクトに置き換えようとしましたが、今のところうまくいきません。
助言がありますか?