c# MVC4 と jQuery/AJAX を使用して開発中の Web アプリケーションがあります。私がやりたいのは、フォーム全体を送信することなく、特定のモデルの特定のプロパティを更新できるビューをユーザーに表示することです。たとえば、データベースのエンティティ オブジェクトの 1 つは「タスク」クラスです。このクラスにはいくつかのプロパティ (TaskName、TaskDescription など) があります。これらのプロパティを一覧表示するビューを表示し、ユーザーがそれぞれを個別にクリックして、編集可能なプロパティ値が入力されたテキスト ボックスを表示することを目的としています。必要に応じて (各テキスト ボックスの横にあるボタンを使用して) オンデマンドで各編集を保存し、各フィールドに検証を含めたいと考えています。これに対応するために、コントローラー/ビューモデルをどのように構成しますか? 各フィールドに複数のコントローラー関数を使用できますか? 1つの「編集」
1 に答える
3
実際には、送信されたフォームのデータ量は、Web サイトの他のほとんどのコンポーネントに比べて非常に少ないため、「フォーム全体」を送信しても問題はありません。更新ごとにモデル全体を投稿アクションに送信し (同じフォームに複数の送信ボタンを設定できます)、新しいモデルでデータベースを更新する単一のコントローラー アクションを送信できます。
ただし、各コンポーネントを個別に更新する場合は、値ごとに個別のフォームを作成して、この値と TaskId を送信できます。これらは、更新するモデルを見つけて更新する必要があるさまざまなアクションに送信されます。
個人的には、前者の方がアーキテクチャをシンプルに保ち、必要なコードがはるかに少ないため、前者を好みます。
于 2013-08-23T12:13:54.660 に答える