ホームページ  >  記事  >  バックエンド開発  >  asp.net でファイルのアップロードを完了するためのコード チュートリアル

asp.net でファイルのアップロードを完了するためのコード チュートリアル

Y2J
Y2Jオリジナル
2017-05-16 10:25:361539ブラウズ

この記事は主にファイルアップロード例のasp.net core mvc実装を紹介します。興味のある方は参考にしてください。

ファイルアップロード機能は私の仕事で使用されています。ここで共有させてください~~

コントローラー:

public class PictureController : Controller
  {
    private IHostingEnvironment hostingEnv;

    public PictureController(IHostingEnvironment env)
    {
      this.hostingEnv = env;
    }
    // GET: /<controller>/
    public IActionResult Index()
    {
      return View();
    }
    public IActionResult UploadFiles()
    {
      return View();
    }
    [HttpPost]
    public IActionResult UploadFiles(IList<IFormFile> files)
    {
      long size = 0;
      foreach (var file in files)
      {
        var filename = ContentDispositionHeaderValue
                .Parse(file.ContentDisposition)
                .FileName
                .Trim(&#39;"&#39;);
        //这个hostingEnv.WebRootPath就是要存的地址可以改下
        filename = hostingEnv.WebRootPath + $@"\{filename}";
        size += file.Length;
        using (FileStream fs = System.IO.File.Create(filename))
        {
          file.CopyTo(fs);
          fs.Flush();
        }
      }
      ViewBag.Message = $"{files.Count} file(s) /{ size}bytes uploaded successfully!";
       return View();
    }

  }

view:

<form asp-action="UploadFiles"
         asp-controller="Picture"
         method="post"
         enctype="multipart/form-data">
        <input type="file" name="files" multiple />
        <input type="submit" value="Upload Selected Files" />
 </form>

ファイルはwwwrootディレクトリファイルにアップロードされています。まだ勉強中です、ようこそ、コミュニケーションしましょう~~

-------------------------------------- ---------- -------------------------------------- ---------- ------------

以下はjquery ajaxメソッドでアップロードしたものです

postメソッドアクションのzパラメータは、 1 つの post メソッドは 404 エラーを引き起こすため、別の get メソッドを追加しました

Controller:

    public IActionResult UploadFilesAjax()
    {
      return View();
    }
    [HttpPost]
    public IActionResult UploadFilesAjax(string z) 
    {
      long size = 0;
      var files = Request.Form.Files;
      foreach (var file in files)
      {
        var filename = ContentDispositionHeaderValue
                .Parse(file.ContentDisposition)
                .FileName
                .Trim(&#39;"&#39;);
        filename = @"C:\Users\lg.HL\Desktop" + $@"\{filename}";    
        size += file.Length;
        using (FileStream fs = System.IO.File.Create(filename))
        {
          file.CopyTo(fs);
          fs.Flush();
        }
      }
      string message = $"{files.Count} file(s) / { size}bytes uploaded successfully!";
        return Json(message);
    }

jquery

<form method="post" enctype="multipart/form-data">
      <input type="file" id="files"
          name="files" multiple />
      <input type="button"
          id="upload"
          value="Upload Selected Files" />
 </form>

【関連推奨事項】

特別な推奨事項

: 」 php Programmer Toolbox」V0.1 バージョン推奨2. ASP 無料ビデオチュートリアル

3. Li Yanhui ASP 基本ビデオチュートリアル

以上がasp.net でファイルのアップロードを完了するためのコード チュートリアルの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。