2012-04-16 5 views
0

でフォームを送信私は、行と3つの編集可能な列MVC 3 - C#の - 表

のCol1と表が含まれているビューがあります。まず名前
Col2に:年齢
COL3:年

をとこのデータの多くの行を編集することができます。

フォームを送信するか、jqueryを使用する方が良いですかコントローラにデータを送信しますか?

このタイプの送信を処理するためにコントローラを定義するにはどうすればよいですか?私は各行、COL、および名前を与えてから、FormCollectionを使用してループしますか?コントローラのパラメータとしてリストを定義できるはずです。

何か提案がありますか?

+1

はすでにここに答えました:http://stackoverflow.com/questions/9443758/how-can-i-do-model-binding-and-data-display-同じ時刻に同じモードを使用する –

+0

はい。 5分後にその記事を見ました。ありがとう。私はリストJSONを使用して終了し、それをC#モデルにシリアライズしました。よく働く。 – Arcadian

答えて

2

私はそれを提出する方法は大したことではないと思いますが、あなたのUI /検証/その他で最もうまくいっています。

コントローラアクションをアレイ/リスト/コレクションにバインドできます。これを見てください...

http://haacked.com/archive/2008/10/23/model-binding-to-a-list.aspx

1

覚えておいてください - 実際にあなたのコントローラにテーブルを送信しているわけではありません。あなたは何らかの形式でデータを提出しています。表は、そのデータを表示する単なる方法です。 JSONデータを表に簡単に表示できるのは、XMLデータをCSVデータとして表示できるためです。

実際に必要なのは、コントローラが期待するデータ(JSON、モデルオブジェクト、またはパラメータリストのみ)をコントローラに定義させてから、そのデータをフォーム送信に送信するかどうかですjQuery、Htmlフォームヘルパーなどを使用して行います)。

これはソリューションに関してはあまり一般的ではないことは知っていますが、私はコントローラに「テーブル」を提出しないことを明確にしたかったのです。表は、基礎となるデータを表示する単なる方法です。あなたが考える必要があるのは、そのデータがどのように表現されているかです。それを解決すると、他のすべてがより明確になるはずです。