.net  core 和.net framework上传文件还是有一些区别的有很多注意的地方

.net framework 上传文件用httppostedfilebase

.net core 上传文件用 IFormFile

下面废话不多说了,直接上代码

控制器里面写

using System;using System.Collections.Generic;using System.Diagnostics;using System.Linq;using System.Threading.Tasks;using Microsoft.AspNetCore.Mvc;using Microsoft.Extensions.Logging;using CoreUpLoad.Models;using Microsoft.AspNetCore.Http;using System.IO;namespace CoreUpLoad.Controllers
{    public class HomeController : Controller
    {

        public IActionResult Index()
        {            return View();
        }
        [HttpPost]        public IActionResult UpLoad(IFormFile file)
        {            return View();
        }
    }
}

index 作为上传的视图页面

UpLoad  作为接受上传的方法

在这里我没有写上传文件存放的代码,为了方便省事主要是后台能接受到文件就好,自己写方法保存,

下面是视图的代码

@{
    ViewData["Title"] = "Index";
}文件上传<form enctype="multipart/form-data" asp-controller="Home" asp-action="UpLoad" method="post"><div class="form-group">选择要上传的文件<input type="file" name="file" value="" multiple />

<div class="form-group"><div class="col-md-12"><input type="submit" value="上传" />

视图这里要注意一下,

<input type="file" name="file" value="" multiple />
input的name属性必须要和控制器里穿的参数名一样,我这里写的都是file
multiple 属性能够接受多个文件上传,要是上传单个文件就不需要写