私はASP.NETとMVC3が初めてで、ファイルをアップロードしてその内容を処理し、結果をビューに表示する方法を理解しようとしています。
次のビュー コードを使用して、ファイルを正常にアップロードできます。
@using (Html.BeginForm("Index", "Home", FormMethod.Post, new {
id="UploadForm",
enctype = "multipart/form-data"})){
<input type="file" name="file" id="Upload" size="60" />
<input type="submit" value="Submit" id="submitID" /> }
...そして、次のコントローラ コード:
public ActionResult Index(HttpPostedFile file) {
if (file != null && file.ContentLength > 0) {
var filename = Path.GetFileName(file.FileName);
var path = Path.Combine(Server.MapPath("~/REPO"), fileName);
file.SaveAs(path); }
return RedirectToAction("Index"); }
私がよく理解できないのは、ファイルをアップロードした後の処理方法です。サーバー側のコードを実行してファイルの内容を読み取り、その結果をインデックス ビューに表示したいと考えています。
だから、これは私がやりたいことです:
- 一部のプロセスにリダイレクトする (コントローラー アクション)
- ファイル名を文字列でアクションに渡します
- サーバー側プログラムを使用してファイルを読み取り、出力を生成します (この部分は既に C# でコーディングされており、文字列入力から文字列を出力します)。
- その文字列をインデックス ビュー コントローラーに戻して、ページに表示します。
私は何をしますか?私が言ったように、私はASP.NETとMVCに比較的慣れていないので(〜2週間)、答えを明示してください。あまり仮定しないでください。ご協力いただきありがとうございます!