0

ファイルを選択してアップロードするためのいくつかのフィールドとUploadifyを含むフォームがあります。次のJavaScriptSubmitメソッド(ボタンクリックから呼び出されます)があります。

$("#UrIntakeForm").submit();
$("#file_upload").uploadify("upload");

次に、コントローラーに2つのアクションがあります。1つはフォームデータがマップされているオブジェクトを受信し、もう1つはアップロードされたファイルを受信する次の署名を使用します。

public void UploadFile(HttpPostedFileBase fileData)

私がする必要があるのはこれです:

  1. フォームデータをデータベースに保存し、IDを取得します
  2. アップロードされた各ファイルのファイル名と最初のテーブルを指すFKを含む行をテーブルに挿入します
  3. ファイルをどこかに保存します
  4. ユーザーが確認できるように、確認番号が記載された印刷可能なフォームを返送してください

ただし、この一連のイベントを実行する方法には少し戸惑っています。まず、コントローラーのFileUploadアクションが、コントローラーのSaveFormアクションの前に呼び出されます。次に、SaveFormアクションが最初に呼び出された場合、確認ビューを返すとファイルのアップロードが妨げられませんか?POSTは一挙に発生すると言われましたが(ファイル、フォームデータ、その他すべて)、フォームの保存とファイルのアップロードを別々に行う方法がわかりません。

誰かがこのPOST(ええと、これらの投稿)の舞台裏で何が起こっているのか、そしてアップロードされたデータを簡単に取得して必要なことを行う方法に光を当てることができますか?30,000フィートの説明は完璧なはずです。

4

1 に答える 1

0

最初にファイルをアップロードし、送信時に使用するメインフォームのファイルパスまたはデータへの参照を返す必要があります。MVCのmodelbinderは現在、存在しないファイル処理のサポートがかなり貧弱であるため、残念ながら1回のパスですべてを実行することはできません。

于 2013-02-14T21:14:45.920 に答える