2017-08-16 10 views
-2

可能かどうかはわかりません。 MVC Webアプリケーションのサーバーにファイルをアップロードしています。現在、自分のプロジェクトフォルダに保存しています。 ここでは正常に動作している私のコードです。ファイルをアップロードするときに名前を付けて保存する

public ActionResult Upload(HttpPostedFileBase file) 
{ 
    try 
    { 
     if (file.ContentLength > 0) 
     { 
      var fileName = Path.GetFileName(file.FileName); 
      var path = Path.Combine(Server.MapPath("~/Documents"), fileName); 
      file.SaveAs(path); 
     } 

     TempData["Message"] = "Upload successful"; 
     return RedirectToAction("Index"); 
    } 
    catch 
    { 
     ViewBag.Message = "Upload failed"; 
     return RedirectToAction("Uploads"); 
    } 
} 

enter image description here

今、私はディレクトリを作成し、彼らが望むファイルを保存するために、ユーザーにオプションを提供して、ファイルサーバー上のファイルを保存する必要があります。そのためには、SAVE ASオプションを提供する必要があります。 ネットワーク上のファイルサーバーに保存する方法と、アップロード時に[名前を付けて保存]オプションを指定する方法はありますか?

+0

**あなたの**サーバーにフォルダを生成するオプションをユーザーに与えたいのはなぜですか?ポイントは何ですか? –

+0

要件はそうです。ファイルサーバーを別々に共有するので、誰もが自分の都合に合わせて保存します。 –

+0

次に、ユーザーがフォルダ名を入力してファイルサーバーのパスと結合できるように、テキストボックスを追加してください –

答えて

1

ユーザーに既定の制御レベルを与える方法はありません。ただし、別のテキストボックスにパスを指定し、そのパスを使用してディレクトリパスを決定することができます。または、共有ホスティング業者のように、アクセス可能なフォルダ構造のツリービューのUIを提供し、フォルダを選択した後、そのディレクトリパスがサーバーに返され、ファイルが書き込まれますそのディレクトリ。私が言及したすべてを行うための組み込みコンポーネントはありません(ただし、ツリービューのコントロールがあります)。完全な製品があれば、おそらく有料バージョンです。

関連する問題